Update Meeting Details API for a channel meeting

Now we support Meeting Details API for a channel meeting. Updating the doc to reflect the changes.

Acrolinx Scorecards
We do not currently enforce a minimum score for content merged to the default branch. This will change in the future.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
96
13
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We do not currently enforce a minimum score for content merged to the default branch. This will change in the future.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
96
13
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Docs Build status updates of commit 0720feb:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: PullRequestMergeConflict] Cannot sync git repo to specified state. Please make sure the pull request is mergeable.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
96
13
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
96
13
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Docs Build status updates of commit ac2f88b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
:white_check_mark:Succeeded
View

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

Docs Build status updates of commit 375dd45:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: PullRequestMergeConflict] Cannot sync git repo to specified state. Please make sure the pull request is mergeable.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/TOC.yml
97
5
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/API-references.md
99
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
97
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/design/designing-apps-in-meetings.md
94
24
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/enable-and-configure-your-app-for-teams-meetings.md
100
0
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/meeting-app-extensibility.md
95
13
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-apps-in-meetings.md
96
1
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-together-mode.md
98
2
link
:white_check_mark:

msteams-platform/bots/bot-basics.md
85
43
link
:white_check_mark:

msteams-platform/bots/bot-features.md
86
21
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/call-notifications.md
85
12
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/calls-meetings-bots-overview.md
82
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
94
10
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/registering-calling-bot.md
87
23
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
84
26
link
:white_check_mark:

msteams-platform/bots/how-to/add-power-virtual-agents-bot-to-teams.md
87
19
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/add-authentication.md
81
134
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/auth-aad-sso-bots.md
82
49
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/auth-flow-bot.md
86
16
link
:white_check_mark:

msteams-platform/bots/how-to/bots-filesv4.md
93
10
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/channel-and-group-conversations.md
85
20
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/channel-messages-with-rsc.md
89
6
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-basics.md
93
7
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
93
19
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/request-headers-of-the-bot.md
81
13
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
78
60
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/subscribe-to-conversation-events.md
87
27
link
:white_check_mark:

msteams-platform/bots/how-to/create-a-bot-commands-menu.md
94
10
link
:white_check_mark:

msteams-platform/bots/how-to/debug/locally-with-an-ide.md
81
29
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
89
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Docs Build status updates of commit 20b5e9b:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: PullRequestMergeConflict] Cannot sync git repo to specified state. Please make sure the pull request is mergeable.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/TOC.yml
97
5
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/API-references.md
99
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
97
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/design/designing-apps-in-meetings.md
94
24
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/enable-and-configure-your-app-for-teams-meetings.md
100
0
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/meeting-app-extensibility.md
95
13
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-apps-in-meetings.md
96
1
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-together-mode.md
98
2
link
:white_check_mark:

msteams-platform/bots/bot-basics.md
85
43
link
:white_check_mark:

msteams-platform/bots/bot-features.md
86
21
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/call-notifications.md
85
12
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/calls-meetings-bots-overview.md
82
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
94
10
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/registering-calling-bot.md
87
23
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
84
26
link
:white_check_mark:

msteams-platform/bots/how-to/add-power-virtual-agents-bot-to-teams.md
87
19
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/add-authentication.md
81
134
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/auth-aad-sso-bots.md
82
49
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/auth-flow-bot.md
86
16
link
:white_check_mark:

msteams-platform/bots/how-to/bots-filesv4.md
93
10
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/channel-and-group-conversations.md
85
20
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/channel-messages-with-rsc.md
89
6
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-basics.md
93
7
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
93
19
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/request-headers-of-the-bot.md
81
13
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
78
60
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/subscribe-to-conversation-events.md
87
27
link
:white_check_mark:

msteams-platform/bots/how-to/create-a-bot-commands-menu.md
94
10
link
:white_check_mark:

msteams-platform/bots/how-to/debug/locally-with-an-ide.md
81
29
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
89
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/TOC.yml
97
5
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/API-references.md
99
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
97
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/design/designing-apps-in-meetings.md
94
24
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/enable-and-configure-your-app-for-teams-meetings.md
100
0
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/meeting-app-extensibility.md
95
13
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-apps-in-meetings.md
96
1
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-together-mode.md
98
2
link
:white_check_mark:

msteams-platform/bots/bot-basics.md
85
43
link
:white_check_mark:

msteams-platform/bots/bot-features.md
86
21
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/call-notifications.md
85
12
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/calls-meetings-bots-overview.md
82
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
94
10
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/registering-calling-bot.md
87
23
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
84
26
link
:white_check_mark:

msteams-platform/bots/how-to/add-power-virtual-agents-bot-to-teams.md
87
19
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/add-authentication.md
81
134
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/auth-aad-sso-bots.md
82
49
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/auth-flow-bot.md
86
16
link
:white_check_mark:

msteams-platform/bots/how-to/bots-filesv4.md
93
10
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/channel-and-group-conversations.md
85
20
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/channel-messages-with-rsc.md
89
6
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-basics.md
93
7
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
93
19
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/request-headers-of-the-bot.md
81
13
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/send-proactive-messages.md
78
60
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/subscribe-to-conversation-events.md
87
27
link
:white_check_mark:

msteams-platform/bots/how-to/create-a-bot-commands-menu.md
94
10
link
:white_check_mark:

msteams-platform/bots/how-to/debug/locally-with-an-ide.md
81
29
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
89
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Docs Build status updates of commit 896ae99:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: PullRequestMergeConflict] Cannot sync git repo to specified state. Please make sure the pull request is mergeable.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Fails to disassemble MIPS32 LE swr and swl instructions

Bug Description
I've noticed that Ghidra is having issues disassembling MIPS32 little-endian swr and swl instructions.
To Reproduce
Try to disassemble:
030058a8 - swl $t8, 3($v0)
000058b8 - swr $t8, ($v0)
Expected behavior
Disassemble 030058a8 to swl $t8, 3($v0) and 000058b8 to swr $t8, ($v0).
Environment:

OS: Ubuntu 18.04.2 LTS
Java Version: 11.0.2
Ghidra Version: 9.0

Looks REL6 related in .sinc, works fine with MIPS:LE:32:default:default, but MIPS:LE:32:R6:default is broken

This is by design and correct behavior for MIPS 32 REL6.
From the Mips 6.04 manual:
Format: SWL rt, offset(base)  MIPS32, removed in Release 6
Format: SWR rt, offset(base) MIPS32, removed in Release 6

The normal thinking on processor modules when designed is to allow all instructions for different versions of the processor, unless there is some conflict with a previous version.  That way you can just use the latest version of the processor in most cases, however not in this case where it was explicitly made invalid in the latest R6.
I'll close this for now, unless you feel the instruction should be included in all variants.

I'd like to keep this opened because I think Ghidra should support more than just R6. Buildroot's current default MIPS32 variant is R1 which leads me to believe a lot of low-end devices will not be compiled with R6.
Source:   https://github.com/buildroot/buildroot/blob/0af24710da70b04947229333c9450c86499b3108/arch/Config.in.mips#L37
Additionally, I think Ghidra should take after the Capstone disassembler which is a more mature project in terms of time being open source. Capstone supports both SWL and SWR.
Source:
https://github.com/aquynh/capstone/blob/4156eefd32479dbea8011612ff14a4946dbcc4a2/arch/Mips/MipsGenInstrInfo.inc#L1668
https://github.com/aquynh/capstone/blob/4156eefd32479dbea8011612ff14a4946dbcc4a2/arch/Mips/MipsGenInstrInfo.inc#L1675

You might be missing something here.
Your post said those 2 did not disassemble.  When I looked at the sinc the only way I noticed those not working was on REL6, if that isn't true then you should correct my assumption with the exact language variant.
If you are on rel6, then those instructions do not exist and nothing changes that. And would be a bug in capstone.
Ghidra supports more than just rel6 mips not sure where u got that idea from.

You're right it does. I left the disassembler on the default MIPS:LE:64:64-32addr-R6addr when I should have been using MIPS:LE:32:default. Thank you @mumbel and @emteere for the help and I apologize for my misunderstanding.


Basic "lite version" (hack) of ZDU is in place Fixes #294

Handling connection draining during the flip is not currently done gracefully.  This hasn't been a problem for basic HTTP html tests but it will be for some applications with stateful servers
Service with background daemons of their own or long running commands will also face issues across flips
ECS system has no tags to compensate the hack uses an alternate "-alt" name

#333 works towards the ECS features needed for proper ECS ZDU

So I'm not entirely sure how this is working, I'm trying to look at the tests to figure it out.
But to the extent that I or other developers are concerned, the interfaces are sane... and the code is fine, so :shipit: ?

@rafkhan actually I'm a little concerned with how it currently works in that if task/cluster and altTask/altCluster don't tear down properly there will be a break...  I know we can improve this but I'm not sure how much of that improvement is part of #333 and how much could be done now.
The concept of a locking table could also help with this as would "incremental teardowns".  I'm calling "incremental teardowns" the act of cleaning up interrupted, paused or partially failed deployments/PR's

:shipit:


Release Date

There is no issue I was just wondering when you plan on making a release version of the software.
Everything is alpha or beta and I do not see any mention of release dates so I was just wondering
Thanks,
Vinod

I would like to some day, but probably not soon.  SSMS 2016 doesn't support the same plugin model so perhaps when I upgrade to use that I will create a final "pre-2016" version and call it done.

I see.
Thank you for the reply.
On Thu, Jul 14, 2016 at 10:42 AM Steve Ognibene<EMAIL_ADDRESS>wrote:

I would like to some day, but probably not soon. SSMS 2016 doesn't support
the same plugin model so perhaps when I upgrade to use that I will create a
final "pre-2016" version and call it done.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/nycdotnet/TSqlFlex/issues/47#issuecomment-232685933,
or mute the thread
https://github.com/notifications/unsubscribe/ABGdjxk5Z_M0S0uQqyqeHui9fUl4xOO0ks5qVkrigaJpZM4JMd3o
.


Task creation/modification in the admin is a huge security hole

Thanks for picking up django-q !!
There's a serious issue that I reported in the original repo: https://github.com/Koed00/django-q/issues/371
TLDR: admin integration allows privileged users to run arbitrary python code, which is some pretty serious privilege escalation, but in the discussion it didn't seem to bother contributors/maintainers.
Now that this project was picked up by different people, maybe we can revisit this ?
The propose solutions was to disable creation/modification through the admin by default, add a setting to allow it, and clearly document the risk next to that setting's doc.

Thanks for creating the issue. I hadn't come across this yet in the original repo.
I would consider this a very low risk, high impact vulnerability. Someone gaining access to the admin panel is already a very serious issue, as they could alter/delete data. Having access to the django-q2 scheduling option can make things worse by running code execution.

The propose solutions was to disable creation/modification through the admin by default, add a setting to allow it, and clearly document the risk next to that setting's doc.

I am happy to implement this (or someone else can do it as it will take some time before I get to this), but I don't think setting the default to disable is a good idea right now. A lot of people don't read changelogs/release notes, so I would rather not change any defaults unless absolutely necessary. Adding the setting to the example config in the install documentation would be a good idea, so people will have this disabled by default.


Add CLI

A CLI is so much easier to use. Sth like:
Ww.py list-novels
Ww.py download
Ww.py list-chapters
Ww.py download-full
It’s pretty easy to implement using https://github.com/docopt/docopt.

And as Wuxiaworld is possibly transitioning to discontinue giving its completed books for free, this CLI will come in handy for quickly getting a lot of novels before the clock runs out.

I'd argue that argparse is more then enought to extend this application.
That being said I have no interest in working on new functionality atm. If somebody wants to work on it, I'd merge the changes to the master branch.

I also should mention that this tool was never designed for batch downloads. I think "list-chapters" as well as "download-full" would need quite a bit of code to get it to work. Apart from that this tool is also too slow and doesnt support all novels.


[dbus] return delay timer from AttachAllNodesTo

This commit:

Makes the DBus API AttachAllNodesTo return the delay between the method returns and the dataset takes effect.
Ensures that when AttachAllNodesTo returns, the node is attached.

@jinran-google Could you summary the changes in this commit? For example, 1. what's the problem and how it can be resolved by this change? 2. Are there potential cases this PR doesn't cover?
Looks like you are accepting my suggestion of calling the handler after network attach, but I believe this is applied to cases we don't need to use pending dataset. We better document this behavior change.

@jinran-google Could you summary the changes in this commit? For example, 1. what's the problem and how it can be resolved by this change? 2. Are there potential cases this PR doesn't cover?
Looks like you are accepting my suggestion of calling the handler after network attach, but I believe this is applied to only cases we don't need to use pending dataset. We better document this behavior change.

Updated the PR description. The PR is to let the caller know when the requested dataset becomes operative and I don't think there are cases not covered. After this PR, the caller can always expect the dataset being active after the method returns + the delay it returns (except that pending dataset is changed by some other means during the pending delay timer).

Thanks @jinran-google

Ensures that when AttachAllNodesTo returns, the node is attached.

Is this accurate? I think the node is attached when the method returns only if we don't need to use Pending Dataset, right?

Thanks @jinran-google

Ensures that when AttachAllNodesTo returns, the node is attached.

Is this accurate? I think the node is attached when the method returns only if we don't need to use Pending Dataset, right?

If we are using pending dataset, the node must be in an attached state in the first place to send the MGMT request. It's just that the active dataset isn't the requested one until a couple of minutes later, that's the purpose of the returned delay value.

Okay, it is correct but what we care is whether the BR is currently active in the designated network, but not the old one. I think the always-attached guarantee won't be useful if we don't guarantee which network the BR is in. So my suggestion is: making it clear that, if the returned value is 0, the BR is already attached to the designated network; otherwise, it is still in the old network and will be in the designated network after the delay. We should document this as part of the d-bus API signature.

It would be really great if the logic for AttachAllNodesTo could be moved to OpenThread, so that it could be a simple OpenThread call.


Failed to open ply file for reading: /home/davidxu/bunny.points.ply

the error log is mentioned as above when l ready to compile the code. Can you tell me where to find the ply file or how to get it, thank you

Just send whatever ply file with normal information you like to this program. I don't think it's very hard to change the file path and find an interesting point cloud file with normal. This is not even a technical problem. Issue closed.

By the way, I'm sorry for my late reply.

Just send whatever ply file with normal information you like to this program. I don't think it's very hard to change the file path and find an interesting point cloud file with normal. Issue closed.
BTW: If you want to get some results like in README, please view the original Kazhdan's release page to find the pcd file.(https://www.cs.jhu.edu/~misha/Code/PoissonRecon/Version16.01/)
Sorry for the late reply.
Best,
Jingwei

OK thx


ImmutableEnumChecker on a list coming from List.of(...) which is immutable

Description of the problem / feature request:
I'm getting ImmutableEnumChecker errors on such enum:
public enum SomeEnum {

    SOME_VALUE(List.of(TYPE_1, TYPE_2))

    public final List<SomeType> types;

    SomeEnum(List<SomeType> types) {
        this.types = types;
    }
}

ErrorProne should not trigger ImmutableEnumChecker on collections created from ImmutableCollections

https://github.com/google/error-prone/blob/master/docs/bugpattern/ImmutableEnumChecker.md this talks about using ImmutableList.of to fix the error. Perhaps List.of bit in your snippet is the issue?

Of course, but List.of uses immutable implementation of a list

Since JDK9 there are built in immutable collections with nice constructors so there's no need to use guava's ones

There is still a good reason to use the Guava variants: to communicate immutability at the type level. From the ImmutableCollection documentation:

Expressing the immutability guarantee directly in the type that user code references is a powerful advantage. Although Java offers certain immutable collection factory methods, such as Collections.singleton(Object) and Set.of, we recommend using these classes instead for this reason (as well as for consistency).

When you create a class that's immutable you call it SomethingSomething not ImmutableSomethingSomething.
JDK finally has immutable collections with nice way of constructing them, just because some ppl prefer to have ImmutableList and guava as a dependency does not mean that error-prone should not ack the fact that JDK evolved and enforce guava everywhere.

There's some related discussion in the docs for MutableMethodReturnType.
It's OK to prefer List.of, but having a static Immutable* type does have advantages: it makes it clear to users of the type that what they're getting is actually immutable, and also enables additional static checking with Error Prone (e.g. ImmutableModification).

It's OK to prefer List.of

Does error-prone support it?

There doesn't seem to be a way to property avoid this warning (without suppressing it) without using Guava, which we rarely need anymore since we upgraded to newer JDK releases. It's just not worth it to include Guava just for the immutable collection types.
Also, the warning message says:

[ImmutableEnumChecker] enums should be immutable

But.. it is immutable when using List.of! The checker is about "immutability", not about communicating the fact to the caller. Even the checker description says nothing about a necessity to communicate the immutability to the caller.
I would clarify this as a bug. The checker just fails to detect the immutability of the enum. It's a clear case of a false-positive.

I agree with others and I don't think it should be a requirement of any checker that is turned on by default to require use of Guava (or I guess some interface naming scheme).

Was hoping this rule could help tighten things up but there are many enums with a List which is safely handled with Collections.unmodifiableList

It is my number one @SuppressWarnings (other than some Eclipse issues with null).
I use parameterized testing with enums so I have lots of enums that take lists.


documentation typo

Hi! I'm copying some previous comments.
in the documentation of the functions, the regressors param, it says "curreny", I think it is repeated in all the functions.
Originally posted by @DiegoKoz in https://github.com/openjournals/joss-reviews/issues/926#issuecomment-428302360

I see this is already corrected

thanks @DiegoKoz
it was already fixed around https://github.com/pachamaltese/gravity/tree/8c8ab898a9c84a532e57a6ce640df131beafe025


Add-change-production-button

This avoids the player having to know about the "shift+right click" shortcut to
change production.
Despite playing a fair bit of civ3, I didn't know about this shortcut and had to
figure it out by looking at the c7 code. These extra menu items make this basic
game functionality more discoverable for new players.

Screenshots:
Right clicking on units with no city:

Right clicking on city with a unit:

After selecting the "change production" option:

I think so, I didn't include changes to:

some font files

a change to C7.csproj because I seem to have downloaded godot 4.3, instead of 4.2.1

some changes to project.godot that also seem related to 4.3 vs 4.2.1 ("location":0 got added for some reason):
old: "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":82,"key_label":0,"unicode":114,"echo":false,"script":null)
new: "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":82,"key_label":0,"unicode":114,"location":0,"echo":false,"script":null)

From within the C7 folder I'm able to run dotnet build && godot  --rendering-driver opengl3 to launch the game just fine.

Turns out it's a Godot version issue, as it works when I switch to 4.3- and looks good. But we're not targeting 4.3 (or more likely 4.4) until after the Carthage release, so this needs to either work with 4.2, or hold off until the next milestone.

Ok, I've switched to 4.2.1, and added a variable to make up for the weird lack of accessor. It seems to work with 4.2 now.


Update to v0.24

WIP
Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Closing in order to open a PR to master branch for clearer understanding of changes.


Run version 3.5.0, liquibase.exception.ValidationFailedException: Validation Failed

Run version 3.5.0, liquibase.exception.ValidationFailedException: Validation Failed
I want to save the old data. How can I operate it

@lingsoul
It seems to happen because db.changelog_schema_MYSQL.xml file is changed from new commit.

Update changed database schema manually(not using liquibase auto update).
Update MD5SUM column to 7:83ff87b1dcdf36c47bcf5e514a84e30d' in DATABASECHANGELOG table.


Links to source files not clickable in terminal if project name contains spaces

VSCode Version: 1.44.0
OS version: Windows_NT x64 6.3.9600

Steps to Reproduce:

Clone this repository https://github.com/valeros/vscode-workspaces
Open vscode-prj2 folder, then open main.cpp file  and try to build using ctrl-shift-b
Check the output  in the terminal and see that links to source file with error ARE clickable.
Open vscode prj1 folder, then open main.cpp file  and try to build using ctrl-shift-b
Check the output  in the terminal and see that links to source file with error ARE NOT clickable.

Does this issue occur when all extensions are disabled?: Yes
Originally reported here
cc @ivankravets

/duplicate #21125


Should consider checking when $coveredLines is 0

Hi guys,
I'm new here.It seems like a bug as I mentioned below . When $coveredLines is 0, there is no place to check "$coveredLines" .  Then it will raise an error about Attempted to divide by zero.
I think when $coveredLines is 0  , $coveragePercentage should be zero directly
https://github.com/PavanMudigonda/jacoco-reporter/blob/95a0b976e99043d65782a3a68f3fda0b51dbd5f6/action.ps1#L142

@chenggangpro
Thanks for reporting. I have fixed it today and it should work for you
if ($missedLines -eq 0 -or $coveredLines -eq 0)
{
$coveragePercentage = 100
}
else
{
$coveragePercentage = [math]::Round(100 - (($missedLines / $coveredLines) * 100))
}

@chenggangpro
If the fix is working for you hit  STAR ⭐ on top right of this repo


CI on k8s 1.15+ is failing to build kind images

It seems like latest 1.15 branch requires cgo, which we don't have enabled:
https://storage.googleapis.com/kubernetes-jenkins/logs/ci-kubernetes-csi-1-14-on-kubernetes-1-15/1186364041350615041/build-log.txt
ERROR: /home/prow/go/pkg/csiprow.Uakw8FT0JH/src/kubernetes/vendor/golang.org/x/sys/unix/BUILD:3:1: in @io_bazel_rules_go//go/private:rules/aspect.bzl%go_archive_aspect[pure="off",static="auto",msan="auto",race="auto",goos="auto",goarch="auto",linkmode="normal"] aspect on go_library rule //vendor/golang.org/x/sys/unix:go_default_library:
Traceback (most recent call last):
	File "/home/prow/go/pkg/csiprow.Uakw8FT0JH/src/kubernetes/vendor/golang.org/x/sys/unix/BUILD", line 3
		@io_bazel_rules_go//go/private:rules/aspect.bzl%go_archive_aspect(...)
	File "/root/.cache/bazel/_bazel_root/dbb3a0bf0fb768dd6a59e5dab737c453/external/io_bazel_rules_go/go/private/rules/aspect.bzl", line 59, in _go_archive_aspect_impl
		go.archive(go, source = source)
	File "/root/.cache/bazel/_bazel_root/dbb3a0bf0fb768dd6a59e5dab737c453/external/io_bazel_rules_go/go/private/actions/archive.bzl", line 92, in go.archive
		cgo_configure(go, srcs = (((((split.go + split.c...), <5 more arguments>)
	File "/root/.cache/bazel/_bazel_root/dbb3a0bf0fb768dd6a59e5dab737c453/external/io_bazel_rules_go/go/private/rules/cgo.bzl", line 101, in cgo_configure
		fail("Go toolchain does not support c...")
Go toolchain does not support cgo
ERROR: Analysis of target '//cmd/kubelet:kubelet' failed; build aborted: Analysis of target '//vendor/golang.org/x/sys/unix:go_default_library' failed; build aborted

Maybe we can also take this opportunity to upgrade to Go 1.13+?

/kind failing-test
@pohly do you have time to look into this?

Looks like https://github.com/kubernetes-sigs/kind/pull/963 fixes it. So we either need to upgrade our kind again, or don't use the bazel build method

testing in https://github.com/kubernetes-csi/csi-driver-host-path/pull/106


Update basepath.js.erb

Use File.join instead of simply concatenating strings. This prevents any double-slashes, which can sometimes be interpreted by the browser as a local file when it occurs at the beginning.

bump


Serialization Exeptions with Eval Context?

How should we handle serialization/deserializtion exceptions around adding structures to an evaluation context?
I'm thinking: cyclical json, un-serializable type provided, etc.
I'm thinking as a user, I wouldn't want it to silently not add my context. That leaves throwing an exception? Don't love it, tbh.

I think this is a great question, and I even encountered a circular JSON error when I added a object with a referential loop into the context.
I think this is actually a great reason why the context transformer concept is useful. It exposes a great place for a provider to solve or expose problems like this, and others. For example, some providers have restrictions on the characters allowed in the key strings in the context (the provider may replace . with _ for instance in this case). Also, some providers support nested objects, and some do not. Providers can therefor flatten, mutate, throw, etc, essentially do whatever they want in their context transformer.
More directly to your point, I think it will be impossible not to ever throw when the context contains certain invalid things. Like I said, I found some vendor SDKs already threw (and defaulted) when supplied with circular objects which they apparently tried to serialize. I think an error thrown in the context transformer should probably cause the evaluation default, and based on existing SDK behavior I've seen, that makes sense.

@justinabrahms - any thoughts on the above?

I think what I'm taking from your example is "sometimes, adding objects to the context might throw exceptions".
I think this can happen regardless of if you use a context transformer, because the exception should probably happen at context addition time and not flag evaluation time.
What if you try to add an unserializable object to the structure in java land? We should throw there (if not a complier error).

I think what I'm taking from your example is "sometimes, adding objects to the context might throw exceptions".

Yes, I think so. Like I said:

More directly to your point, I think it will be impossible not to ever throw when the context contains certain invalid things.

I think this can happen regardless of if you use a context transformer, because the exception should probably happen at context addition time and not flag evaluation time.

Agreed, it just gives it a nice consistent place to throw/transform when we have such issues.

What if you try to add an unserializable object to the structure in java land? We should throw there (if not a complier error).

Fully agree. Not sure what else could be done, unless a provider want's to omit such objects silently (probably not a great idea).

From the meeting, there are three primary options.

Throw at the moment context is added
Throw during flag evaluation time, returning a default value
Don't throw and just silently don't add something to the context.

3 is the least safe idea and I think we should just wholesale exclude it.
Between 1 and 2, I think we want the choice which is the safest for our users. With that, we have to assume that the provided default is safe. So I think the right choice is for us to not throw during adding to the context. The big reason for that is we may be adding some sort of runtime data structures to the context which we weren't able to test with. I don't think we want to be responsible for users throwing 5xx's for having some malformed data.

Between 1 and 2, I think we want the choice which is the safest for our users. With that, we have to assume that the provided default is safe. So I think the right choice is for us to not throw during adding to the context.

Agreed... this is also consistent with the behavior I've seen in existing SDKs, at least in JS.
What do you think about the point brought up in the meeting that some of this might be good to be configurable? Do you think it's worth making 1 vs 2 behavior dependent on an option, with 2 being the default?

I think it's reasonable to say "you must, by default, do #2. You may, if you so choose, provide a way for #1 to happen based on user configuration".

@justinabrahms I'm interested in what your thoughts are on this now that things have matured quite a bit.
Is this still an issue?

@toddbaert I've actually dropped serialization from the java sdk. This is now a provider concern.

@toddbaert I've actually dropped serialization from the java sdk. This is now a provider concern.

Makes sense. Closing.


update to Kubernetes 1.25.x

Description:
EG should be compatible with and tested against the latest Kubernetes 1.25.x.
Tasks:

[x] upgrade metallb to latest (current version uses PSP which is no longer available in Kube 1.25)
[x]  upgrade kind to latest
[x]  update conformance test matrix node images (pending https://github.com/envoyproxy/gateway/pull/681)
[ ]  update k8s go modules

Reopened since the k8s.io deps should still get bumped to v1.25.

ref. https://github.com/kubernetes-sigs/gateway-api/pull/1587

I'd suggest updating this to be for Kube 1.26 (including modules, kind cluster for conformance tests, etc) since it's out now. Supported Kubernetes versions would be 1.24 - 1.26.

@skriss thanks for the heads-up that k8s 1.26 is now available. I'm unassigning myself since I don't have the available bandwidth to fix this issue for v0.3. Hopefully, someone else can take on this issue. @jcheld are you able to help with this? It can be a good first issue and you can reference https://github.com/envoyproxy/gateway/pull/767 for guidance.

Thanks at @jcheld! I just assigned you the issue. Let us know if you have any questions.


Project: Corporate Helper

Project name
Corporate Helper
Description
Hi!
This App uses Single-Sign-On and contains three tabs:
Home: home page of the app. Displays information about the currently signed-in user using Graph.
Expenses: used to submit expenses to undergo approval for your manager. You select the date, the value of the expense and then an e-mail is sent to you and your manager, containing the expense.
Vacation: used to submit your vacation. You select the date for your vacation, and after submitting it, it automatically turns on the Automatic Replies in your Outlook with a predefined message containing your vacation period. It also blocks your calendar for that period with an OOF event.
Here is a video demonstrating the app: https://youtu.be/Wfe1po4w8x8
Mirror: https://1drv.ms/u/s!AhbdjVk58i1ah_EFwhWLfr3r3EHASw?e=0CRCra
Project Repository URL
https://github.com/fsdp15/CoorporateHelper/tree/master
Project video
https://youtu.be/Wfe1po4w8x8
Team members
Felipe Dotti<EMAIL_ADDRESS>

Thanks for your project submission @fsdp15, looking forward to checking out the details! Would you be willing to fill the feedback survey? That'd help us learn from your experience and improve the hackathon next time: https://aka.ms/hack-together-teams/survey


Make registration not mandatory

Is it possible to skip the registration? (or provide a small test period)
Or provide an auth via github?

Hi
I am wondering that whether the registration is suspended? Because I only got an error message when I tried to sign up. I could not find other places to respond this condition, so I reply it here. Hope you can see this. Thanks.


Check code style in all .py files

Code style checked for all .py files.
Closed in 5518533acebc36048525fd4152358e15c923ac6f.


module issue

Hi, when I try to use SVGDreamer as the instruction on colab, I encounter no module issues, e.g., hydra
Is there sth I did wrong or should I install them manually? Thanks!

Oh, seems like it is conda env issues

Oh, seems like it is conda env issues


Integration of a Drupal GraphQL API with nuxt-multi-cache

I'm working on a project using nuxt-graphql-middleware with a Drupal GraphQL API. I'm currently thinking about how I could integrate nuxt-multi-cache. This could be solved on a quite generic way.
Those are my requirements:

Handle Drupal cache tags
Abstract the caching logic (in a new composable?)
Support CDNs (Fastly in my case)

Here are some thoughts:

Does anyone have a working setup?
Probably this should be implemented using useDataCache. The alternative is useRouteCache, but that looks rather hacky and I don't see how we could implement cache tags there.
This could be implemented in doGraphqlRequest
The cache keys need to be built automatically, so we need a way to stringify the query name and variables.

This could also live in it's own project or added to nuxt-graphql-middleware, whatever makes most sense.
@dulnan What do you think about this?

So there‘s quite a few approaches here and they all depend on what exactly needs to be cached.
If you only want to cache the response of the GraphQL middleware part publicly on Fastly you would have to use the "CDN" feature of nuxt-multi-cache. In this case you could define a custom "onServerResponse" method in ~/app/graphqlMiddleware.serverOptions.ts where you would extract the cacheability headers from Drupal and pass them to useCDNHeaders(). This will of course only cache it on the CDN, so SSR requests will still always hit Drupal.
To also have some parts of your SSR benefit from caching you could use the "data cache" feature. This works best for rarely changing requests. Let‘s say you want to cache the menu/footer that way. You‘d then have a useAsyncData() somewhere in a component in which you use the useDataCache() composable to load it from cache and if available, return it. If not, it is followed by a useGraphqlQuery() whose result you put into cache. You can leverage the onServerResponse config option from before to "pass along" the cacheability data (e.g. cache tags). The way I did it in the past is to just add a "__cacheTags" property to the response body, which I can then acces in the result of useGraphqlQuery().
This approach is arguably the easiest one and it‘s also very clear what‘s happening, except maybe the "magic" how cache tags end up in there). It‘s also the one that should give the most performance gains during SSR, because the data cache (especially when using the memory backend) has minimal overhead (compared to caching with useRouteCache which is indeed quite hacky due to Nuxt/Nitro limitations).
Now, in regards to making it generic and work for all GraphQL requests across the entire app, what you suggested with using doGraphqlRequest would indeed be the cleanest way because everything related to "caching GraphQL responses" would reside in a single place. You‘d again use useDataCache() in there, derive a cache key from the operation name + variables, as you suggested.
If you also want to cache SSR-rendered pages on Fastly, then again this should be quite straightforward: Assuming you have implemented a onServerResponse method and you pass cache tags "magically" via the __cacheTags property in the middleware response, you can simply add an interceptor via a Nuxt plugin that is executed everytime the Nuxt app get‘s a response from /api/graphql:
https://nuxt-graphql-middleware.dulnan.net/configuration/composable.html#example-alter-the-request-using-interceptors
Intercepting via onResponse() you‘d extract the cache tags from the response and add them as cache tags via useCDNHeaders(). That way, as long as you always fetch your data via GraphQL, your SSR rendered page response will contain the accumulated cache tags of all GraphQL queries in the Surrogate-Key header.

@dulnan thank you so much for your quick response.
As for the CDN caching of the middleware requests, that was quite easy without even using nuxt-multi-cache. The code isn't tested yet, but that should do the job:
import { defineGraphqlServerOptions } from 'nuxt-graphql-middleware/dist/runtime/serverOptions'

export default defineGraphqlServerOptions({
  /**
   * Alter response from GraphQL server.
   */
  onServerResponse (event, graphqlResponse) {
    // Set cache headers
    event.node.res.setHeader(
      'Cache-Control',
      'max-age=900, public, s-maxage=2592000, stale-if-error=3600, stale-while-revalidate=3600'
    )
    event.node.res.setHeader('Surrogate-Control', 'max-age=900, public')
    const surrogateKey = graphqlResponse.headers.get('Surrogate-Key')
    if (surrogateKey) {
      event.node.res.setHeader('Surrogate-Key', surrogateKey)
    }
    return graphqlResponse._data
  }
})

I'm going to refactor that to use useCDNHeaders() later.
Regarding the generic solution I think that I'm going to try the useDataCache() inside doGraphqlRequest. Let's see how that goes.
But I'm having some trouble to understand the docs of  doGraphqlRequest. It would be very useful to have the default implementation as an example. The one in the docs does something very different: https://nuxt-graphql-middleware.dulnan.net/configuration/server-options.html#dographqlrequest
Ah, the interceptor approach sounds interesting. I'll try that once I solved the generic  doGraphqlRequest implementation.
In case you have some code to share, that would be very helpful!

I found a hacky workaround to get the custom implementation of doGraphqlRequest running. These functions aren't exported by the package, but they should be to get the needed functions to do what I just did: getFetchOptions, onServerError, onServerResponse, getEndpoint
Here is the default implementation. This should probably go in the docs:
import { defineGraphqlServerOptions } from 'nuxt-graphql-middleware/dist/runtime/serverOptions'
import { GraphqlMiddlewareOperation } from 'nuxt-graphql-middleware/dist/runtime/settings'
import type { GraphqlMiddlewareRuntimeConfig } from 'nuxt-graphql-middleware/dist/runtime/types'
import { getFetchOptions, onServerError, onServerResponse, getEndpoint } from '../utils/middlewareFunctions'
import serverOptions from '#graphql-middleware-server-options-build'

export default defineGraphqlServerOptions({
  async doGraphqlRequest ({
    event,
    operationName,
    operationDocument,
    variables
  }) {
    // The operation (either "query" or "mutation").
    const operation = event.context?.params
      ?.operation as GraphqlMiddlewareOperation
    // Determine the endpoint of the GraphQL server.

    // Get the fetch options for this request.
    const fetchOptions = await getFetchOptions(
      serverOptions,
      event,
      operation,
      operationName
    )

    // Get the runtime config.
    const runtimeConfig = useRuntimeConfig()
      .graphqlMiddleware as GraphqlMiddlewareRuntimeConfig

    // Determine the endpoint of the GraphQL server.
    const endpoint = await getEndpoint(
      runtimeConfig,
      serverOptions,
      event,
      operation,
      operationName
    )GraphqlMiddlewareServerOptions

    return $fetch
      .raw(endpoint, {
        // @todo: Remove any once https://github.com/unjs/nitro/pull/883 is released.
        method: 'POST' as any,
        body: {
          query: operationDocument,
          variables,
          operationName
        },
        ...fetchOptions
      })
      .then((response) => {
        return onServerResponse(
          serverOptions,
          event,
          response,
          operation,
          operationName
        )
      })
      .catch((error) => {
        return onServerError(
          serverOptions,
          event,
          error,
          operation,
          operationName
        )
      })
  }
})

Ok, adding the cache tags to the response of the middleware is more difficult than expected... The approach described in https://github.com/dulnan/nuxt-graphql-middleware/issues/25#issuecomment-1968808769 doesn't work, since onServerResponse() is only being called on the first uncached request. The function isn't being called in the subsequent cached requests. Reading your last comment again, you didn't elaborate on that issue. Do you have suggestions regarding that?
Additionally I don't think that calling useCDNHeaders() has any effect in neither doGraphqlRequest(), onServerResponse nor in the plugin as you suggested. Am I doing something wrong? Putting the same code in a page or a component works fine...
plugins/graphqlConfig.ts
export default defineNuxtPlugin((NuxtApp) => {
  const state = useGraphqlState()

  if (!state) {
    return
  }

  state.fetchOptions = {
    onResponse ({ request, response, options }) {
      if (response._data.__cacheTags) {
        const cacheTags = response._data.__cacheTags.split(' ')
        useCDNHeaders((helper) => {
          helper
            .public()
            .setNumeric('maxAge', 3600)
            .set('staleIfError', 24000)
            .set('staleWhileRevalidate', 60000)
            .set('mustRevalidate', true)
            .addTags(cacheTags)
        })
      }
    }
  }
})

app/graphqlMiddleware.serverOptions.ts
import { defineGraphqlServerOptions } from 'nuxt-graphql-middleware/dist/runtime/serverOptions'
import { GraphqlMiddlewareOperation } from 'nuxt-graphql-middleware/dist/runtime/settings'
import type { GraphqlMiddlewareRuntimeConfig } from 'nuxt-graphql-middleware/dist/runtime/types'
// @todo: Mocking the missing functions from nuxt-graphql-middleware
import { getFetchOptions, onServerError, onServerResponse, getEndpoint } from '../utils/middlewareFunctions'
import serverOptions from '#graphql-middleware-server-options-build'
import { useDataCache, useCDNHeaders } from '#nuxt-multi-cache/composables'

export default defineGraphqlServerOptions({
  /**
   * Alter response from GraphQL server.
   */
  onServerResponse (event, graphqlResponse) {
    const surrogateKey = graphqlResponse.headers.get('Surrogate-Key')
    useCDNHeaders((helper) => {
      helper
        .public()
        .setNumeric('maxAge', 3600)
        .set('staleIfError', 24000)
        .set('staleWhileRevalidate', 60000)
        .set('mustRevalidate', true)
        .addTags(surrogateKey)
    })
    return { ...graphqlResponse._data, __cacheTags: surrogateKey }
  },

  /**
   * Cache requests in nuxt-multi-cache
   */
  async doGraphqlRequest ({
    event,
    operationName,
    operationDocument,
    variables
  }) {
    // The operation (either "query" or "mutation").
    const operation = event.context?.params
      ?.operation as GraphqlMiddlewareOperation
    // Determine the endpoint of the GraphQL server.

    // Get the fetch options for this request.
    const fetchOptions = await getFetchOptions(
      serverOptions,
      event,
      operation,
      operationName
    )

    // Get the runtime config.
    const runtimeConfig = useRuntimeConfig()
      .graphqlMiddleware as GraphqlMiddlewareRuntimeConfig

    // Determine the endpoint of the GraphQL server.
    const endpoint = await getEndpoint(
      runtimeConfig,
      serverOptions,
      event,
      operation,
      operationName
    )

    const cacheKey = `${operationName}|${JSON.stringify(variables)}`
    const { value, addToCache } = await useDataCache(cacheKey, event)

    // If the data is already in cache, return it
    if (value) {
      useCDNHeaders((helper) => {
        helper
          .public()
          .setNumeric('maxAge', 3600)
          .set('staleIfError', 24000)
          .set('staleWhileRevalidate', 60000)
          .set('mustRevalidate', true)
          .addTags(value.__cacheTags)
      })
      return value
    }

    // The data isn't available in cache. We have to fetch it.
    const response = await $fetch
      .raw(endpoint, {
        // @todo: Remove any once https://github.com/unjs/nitro/pull/883 is released.
        method: 'POST' as any,
        body: {
          query: operationDocument,
          variables,
          operationName
        },
        ...fetchOptions
      })
      .then((response) => {
        return onServerResponse(
          serverOptions,
          event,
          response,
          operation,
          operationName
        )
      })
      .catch((error) => {
        return onServerError(
          serverOptions,
          event,
          error,
          operation,
          operationName
        )
      })

    // Save data to the cache and return it.
    addToCache(response)
    useCDNHeaders((helper) => {
      helper
        .public()
        .setNumeric('maxAge', 3600)
        .set('staleIfError', 24000)
        .set('staleWhileRevalidate', 60000)
        .set('mustRevalidate', true)
        .addTags(response.__cacheTags)
    })
    return response
  }
})

Ok, you can skip my last few comments. I have a working version of all the functionality. I'm trying to figure out how I could share this in a useful way.  Currently I'm setting up a gist.

There you go: https://gist.github.com/luksak/def035c8ed37892d967a05186efa180a

Sorry it took a bit longer, but thanks a lot for your examples! I have added a first (simplified) example on how to do simple server-side caching using doGraphqlRequest. I plan to add a section to the docs specifically about integration with nuxt-multi-cache using your example.
In the upcoming release there will be some changes which you might like:
You can now provide a generic when defining the server options to better type custom properties on the response when passing around things like the cacheability:
type GraphqlResponseWithCustomProperty = GraphqlResponse<any> & {
  __customProperty?: string[]
}

export default defineGraphqlServerOptions<GraphqlResponseWithCustomProperty>({
  onServerResponse(event, graphqlResponse) {
    // Set a static header.
    event.node.res.setHeader('x-nuxt-custom-header', 'A custom header value')

    // Pass the set-cookie header from the GraphQL server to the client.
    const setCookie = graphqlResponse.headers.get('set-cookie')
    if (setCookie) {
      event.node.res.setHeader('set-cookie', setCookie)
    }

    // Return the GraphQL response as is.
    return {
      data: graphqlResponse._data?.data || null,
      errors: graphqlResponse._data?.errors || [],
      __customProperty: ['one', 'two'],
    }
  },
})

I'd love to be able to reuse that type further so it would also apply for the entire code base, e.g. in useGraphqlQuery or when setting fetchOptions in useGraphqlState. Currently exploring the possibilities.
There is also a new composable useAsyncGraphqlQuery that is basically a simple wrapper around useAsyncData to do a single query. It also implements a new opt-in client-side cache, ideal when fetching data that does not need to be refetched for the duration of a browser session.


Native Forms for Android is outdated

Since Xamarin Forms 3.3 uses the support library for creating the fragment the sample code provided under Native Forms is no longer up to date.

Hi @mallibone
Thanks for pointing this out. I've updated the doc and sample, although it'll be later in the day before the doc PR goes live.
Thanks again.


Fix Dangerfile

          2 Messages

:book:
Executed 2 tests, with 0 failures (0 unexpected) in 0.511 (0.551) seconds

:book:
What a good PR :white_flower:

Develop PR Check Result

Item
Result

Head Branch check
:o:

Base Branch check
:o:

Merge Commits check
:o:

Modification Volumn check
:o:

  Generated by :no_entry_sign: Danger


https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=20491#c3

@xiaotiansf  @xiaotianshi2 could you please check the memory violation issue in above link?
Thanks in advance.

@huili2 I sent you e-mail on April 27 regarding this issue. I had tried everything in as many as times with its test case on different platform by using oss-fuzz test source code. Unfortunately, the bug just can't be reproduced. Do you happen to be able to reproduce the bug?

yes. I used Mac and directly decoded the data provided in that bug, and it can be re-produced by USE_ASAN=Yes.

I see and I'll try. Just forgot how to enable USE_ASAN=Yes? Thx.

in Mac, "make USE_ASAN=Yes ..."

@huili2 Just let you know I did not forget the issue and it is just I still try to find time to fix it. Hopefully next week.

OK. Thanks for the information.


crawley: 1.7.4 -> 1.7.5

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/s0rg/crawley/releases.
meta.description for crawley is: The unix-way web crawler
meta.homepage for crawley is: https://github.com/s0rg/crawley
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.7.5 in filename of file in /nix/store/r17w332npazaqgw4s3bvzpjm35i7qyqx-crawley-1.7.5

Rebuild report (if merged into master) (click to expand)

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
crawley

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/r17w332npazaqgw4s3bvzpjm35i7qyqx-crawley-1.7.5 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A crawley https://github.com/r-ryantm/nixpkgs/archive/d5749032b489c05423ec39a664f4a0581cb48a07.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/d5749032b489c05423ec39a664f4a0581cb48a07#crawley

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/r17w332npazaqgw4s3bvzpjm35i7qyqx-crawley-1.7.5
ls -la /nix/store/r17w332npazaqgw4s3bvzpjm35i7qyqx-crawley-1.7.5/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

crawley

Maintainer pings
cc @lsf1re for testing.

@ofborg eval


Thoughts on recipe issue templates

We currently have these two options:

Bug report
Fix Broken Recipe

What about an issue for improving a working recipe?
Should all of these be merged under something like "Recipe Issue"?

I think 'fix broken recipe' should be left as is. What you're proposing is a recipe improvement. The bug report should likely stay since a recipe (or this repo) could have a bug. Then again, I think we'd likely use the 'cookbook' label or 'improve-recipe' label.... Hm... I'm not sure anymore, haha.

Yeah, let's go with Recipe Issue. That can cover bugs, improvements, etc.
The cookbook label can refer to any "meta" things relating to this project or how we're doing things.
recipe-request will always refer to a recipe request.


Notification email when assigning CLA Manager Designee and Company Owner roles

[ ] Assign the CLA Manager Designee and Company Owner using invite flow, doesn't matter if the user has LFID or not.
[ ] Send two invite flow emails to the user when user comes to selected area in the flowchart above. One invite flow email will be for assignment of CLA Manager Designee role and the other will be following...

Hello ,
This is a notification email from EasyCLA regarding the newly created Salesforce Organization . You have been assigned as the company owner for this new organization.
The organization profile can be completed via clicking this link
If you need help or have questions about EasyCLA, you can read the documentation or reach out to us for support.
Thanks,
EasyCLA support team

@pranab-bajpai Some clarification for users with no LFID. Since this is the invite flow they will need the user invite link as well which has not been specified in the email template you provided .

@wanyaland
This ticket was for invite flow for both users with LFID and without LFID. Does this handle invite flow for user with LFID as well?

Closing this issue as Invite email is sent to only user without LFID and that flow is working as expected
Due to limitation with Invite flow, invite email cannot be sent user with LFID


Language lookup helper functions

added getlang_by_name for lookup by name, e.g. 'English'
not super sure how useful this will be for languages with subcodes
e.g.  "pt-BR":{"name":"Portuguese, Brazil", ..   (comma separated).
sometimes multiple lanages semicolon separated
e.g     "ca":{"name":"Catalan; Valencian", ..
Added getlang_by_alpha2 for use in YouTubeSubtitleFile
using lang lookup strategy inpired by David Hu's TE chef
https://github.com/fle-internal/te-sushi-chef/blob/master/te_chef.py#L158

Currently the default keyword argument to getlang doesn't do anything.
I propose to leave it that way or remove it...

Just to note that English also has subcodes :)

English, Country-where-they-put-vinegar-on-their-fries ;)

English, country where they put gravy on their chips

@divad12 What use case do you have in mind for getlang_closest?
I think something like getlang_closest_by_name could be useful (ignore locale info e.g. zh-Hans, Chinese, Mandarin, Chinese (mainland) etc, all match to zh = Chinese.
Also do you have any ideas how to handle extensible languages? for example a language that we have never seen. I think that one might be out of scope for this PR...

@ivanistheone The use case I had in mind was for Ricecooker's new smarter YouTubeSubtitleFile that you wrote: https://github.com/learningequality/ricecooker/blob/578a497a2b2cd6f9cb41c37ebfc7753ea148ed8d/ricecooker/classes/files.py#L434
So, e.g. languages.getlang_closest('en'), languages.getlang_closest('zu'), languages.getlang_closest('zul')
That's OK though, I think what you have is fine.
I'm not sure about a language that we have never seen ... I think you're good to say it's out of scope for now.

FYI this is approved. Looks great, merge when ready @ivanistheone


Commenting and pledges

I was thinking that the current way of adding pledges with a kind:1 with just a number as the content is somewhat weird, as it makes no sense in other clients.
I think the best idea for nostrbounties.com would be to display all comments as comments -- this would allow people to say "I'm working on this" or maybe ask "what if I did x or y?" and, of course, to say "I've done what was requested, here is my deliverable".
At first it's not even necessary to build the actual commenting functionality, as that can be done on other websites, like https://habla.news/ -- but displaying them would be nice.
And then the extra pledges could be a special comment -- built automatically by the UI, that says "I pledge 500 satoshis". Just like it is today (with the special t tag and so on), but with the human-readable phrase that can show up nicely on other clients, like https://habla.news/. Then nostrbounties.com can parse the number out of these specially-formatted comments and count these.
In the future there could be a button for "submitting deliverable" in which someone who has completed the bounty can just paste a url and the UI would construct a special comment saying: "I've finished this: " -- I don't know, something like that.

many people thought the same about the pledge comments, they need to be more descriptive. I spent some time thinking and these are my ideas:

we could have two sections below the bounty description component, one for a general discussion about the bounty and the other as a "personal" section where the bounty poster and the bounty hunter can comment on how is the project going, updates, changes (this is public information).

I noticed that anyone can say i am gonna pledge [X] amount of sats but it is just that, a promise, and I think it doesn't add a lot of value.  An escrow system could solve this, i think @vito Pamplona mentioned something about it.

Also, what do you think of a commenting system using markdown?

I think we should just use kind:1 and that shouldn't support Markdown for various reasons.

got it! I'll see what I could do in the next days

@diamsa – I think this can be closed?

yes, I'm going to close it. Thank you for the contribution!


Add Yarn cache (Travis CI)

This PR includes:

💅
Add Yarn cache, see https://blog.travis-ci.com/2016-11-21-travis-ci-now-supports-yarn

@danielbayerlein Cool! Thanks


Mimir 672 dashboard statreg websockets PART 2

Circular dependency fix
Import/Require fix
Fix linting in all files

Bra opprydding!


Unable to use delete and backspace keys as shortcuts with modifiers

🐛 Bug Report
Seems like is not possible to use the delete or backspace keys with modifiers as shortcuts. Checking the default shortcuts seems like setting the delete/backspace keys with modifiers should be possible (like the default shortcut value for the Delete selected layers. action - Ctrl + Delete)
💡 Steps to Reproduce

Try to set Ctrl + Delete or Ctrl + Backspace
Shortcut text gets deleted instead of being set or showing a warnning about shortcut conflicts

A preview of the behavior:

💡 Expected Behavior
Using key combinations like Ctrl + Delete and Ctrl + Backspace should be recognized/settable as shortcuts
🌎 Environment
napari: 0.5.0a2.dev425+g899edfe3
Platform: Windows-10-10.0.19045-SP0
Python: 3.10.9 | packaged by conda-forge | (main, Jan 11 2023, 15:15:40) [MSC v.1916 64 bit (AMD64)]
Qt: 5.15.2
PyQt5: 5.15.9
NumPy: 1.25.2
SciPy: 1.9.3
Dask: 2023.10.1
VisPy: 0.14.1
magicgui: 0.7.3
superqt: unknown
in-n-out: 0.1.5
app-model: 0.2.2
npe2: 0.7.3
OpenGL:

GL version:  4.5.0 - Build <IP_ADDRESS>44
MAX_TEXTURE_SIZE: 16384

Screens:

screen 1: resolution 1366x768, scale 1.0
screen 2: resolution 1536x864, scale 1.0

Settings path:

C:\Users\dalth\AppData\Local\napari\napari-dev_4454fdbf170edefe23827a4bf512389a6806af69\settings.yaml
Plugins:
napari: 0.5.0a2.dev425+g899edfe3 (77 contributions)
napari-assistant: 0.4.4 (4 contributions)
napari-console: 0.0.6 (0 contributions)
napari-generic-SIMulator: 0.0.19 (2 contributions)
napari-ome-zarr: 0.5.2 (2 contributions)
napari-pyclesperanto-assistant: 0.22.1 (51 contributions)
napari-skimage-regionprops: 0.10.0 (2 contributions)
napari-svg: 0.1.10 (2 contributions)
napari-time-slicer: 0.4.9 (2 contributions)
napari-tools-menu: 0.1.19 (0 contributions)
napari-ui-tracer: 0.2.0.dev0 (2 contributions)

💡 Additional Context
No response

Thanks for the feedback @psobolewskiPhD ! Checked again with main on Windows and on macOS and I would say that I still can reproduce this but indeed there is a catch here. If I keep Ctrl press (or Cmd on macOS) and then press again Delete I'm able to set the shortcut and get the corresponding warning:

A similar behavior occurs with Ctrl/Cmd + Backspace and also is possible to achieve to set the shortcut if you keep pressing the keys until the shortcut is detected (so to reproduce the initial behavior I reported you need to quickly press the keys without holding them).
I guess for these kind of shortcuts then there is a need to do them twice/keep holding the keys pressed until the shortcut is detected? Maybe that's the intended behavior? If that's the case feel free to close this :)

I think the reason it sometimes takes two tries is in the info at the bottom: to set delete/backspace you need a cleared out box.
For me—on mac—if the binding box is empty, I can double click and set modifier+delete. If there's a setting it takes two tries, but that's because the first try uses delete to clear the existing binding and the 2nd sets it.

I see, so just as a final check to determine if this needs to be closed or an actual issue exists, what happens if you hold Cmd and quickly press and release Delete in a cleared out box? In my case, I see the Cmd symbol being shown and then deleted. Also, what happens if, while still holding Cmd, you press Delete again? In my case, the box shows the proper shortcut and the corresponding warning. A preview of that on macOS:

If that is expected then we probably should close this and #6406 (or close this and update #6406 to just add more tests cases). Let me know what do you see locally and what do you think!

I'm on main ef26ef34b0ddea62ba28047c7f4044d21a0db9e4
I need to double click into the Alternative Keybinding, which gets me the insertion bar (blinking |)
Then pressing command (meta) does nothing, but pressing and releasing backspace or delete results in the proper binding. For the case of delete I get the warning.
I never see just command show-up in the box like you do--which means that modifier-only bindings can't be bound, even though the default for Reset Scroll is a modifier only binding. And indeed I can't get shift or control or option alone do work, but any of them work fist try with backspace or delete.

This is really strange, not sure what could be happening but even when updating my local repo to the latest main (ef26ef34) I still can experience the same behavior (the one you where able to partially reproduce with 0.4.18) on Windows and macOS. Will try to create a new dev env and see if something changes (maybe some dependency version could be causing this behavior for me :thinking:). Could you share your napari info to see if it is different from the one I have?
  napari info on Windows
napari: 0.5.0a2.dev454+gef26ef34
Platform: Windows-10-10.0.19045-SP0
Python: 3.10.9 | packaged by conda-forge | (main, Jan 11 2023, 15:15:40) [MSC v.1916 64 bit (AMD64)]
Qt: 5.15.2
PyQt5: 5.15.9
NumPy: 1.25.2
SciPy: 1.9.3
Dask: 2023.10.1
VisPy: 0.14.1
magicgui: 0.7.3
superqt: unknown
in-n-out: 0.1.5
app-model: 0.2.2
npe2: 0.7.3

OpenGL:
- GL version: 4.5.0 - Build <IP_ADDRESS>44
- MAX_TEXTURE_SIZE: 16384

Screens:
- screen 1: resolution 1366x768, scale 1.0
- screen 2: resolution 1920x1080, scale 1.0

Settings path:
- C:\Users\dalth\AppData\Local\napari\napari-dev_4454fdbf170edefe23827a4bf512389a6806af69\settings.yaml

  napari info on macOS
TODO

Pressing Command key results in the word "Control" printed in the box (should be Meta...so something is off) and delete deletes it.

Regarding 0.4.18 I think some changes where done to the shortcuts handling to show some specific icons per platform but those changes are part only of 0.5.0. If you check with 0.4.19 I think you will see a similar behavior (Control being shown instead of the Cmd symbol on macOS for example 🤔 )

My napari info
╰─ napari --info                                                 (napari-dev) ─╯
napari: 0.5.0a2.dev429+g47b9527ef
Platform: macOS-13.3.1-arm64-arm-64bit
System: MacOS 13.3.1
Python: 3.11.6 | packaged by conda-forge | (main, Oct  3 2023, 10:37:07) [Clang 15.0.7 ]
Qt: 6.6.0
PyQt6:
NumPy: 1.26.1
SciPy: 1.11.3
Dask: 2023.10.1
VisPy: 0.14.1
magicgui: 0.8.0
superqt: 0.6.1
in-n-out: 0.1.9
app-model: 0.2.2
npe2: 0.7.3

OpenGL:
  - GL version:  2.1 Metal - 83.1
  - MAX_TEXTURE_SIZE: 16384

Screens:
  - screen 1: resolution 1680x1050, scale 2.0

Settings path:
  - /Users/piotrsobolewski/Library/Application Support/napari/napari-dev_a1eb8b76ba95fa16ad06e26097b46b8455dfbf0b/settings.yaml
Plugins:
  - napari: 0.5.0a2.dev429+g47b9527ef (77 contributions)
  - napari-console: 0.0.9 (0 contributions)
  - napari-svg: 0.1.10 (2 contributions)

Only thing that stands out is I have pyqt6 cause I'm on arm64. Let me try with pyqt5 from conda-forge.

Boom! with pyqt5 from conda-forge and pip install -e .[dev] I get the behavior you show in your videos. So Qt6 is affecting something.
Wait, i'm on python 3.10 now >.<
Let me double check pyqt5/python3.11

So Qt6 is affecting something.

Oh that was it! Although on Windows even with PyQt6 I still experience the same behavior, checking on macOS I see now the behavior you have been describing (so no single modifier is shown and the usage of Delete/Backspace + a modifier works without double press or full hold).

So I think we'd consider the Pyqt6 behavior "correct" and Pyqt5 not?

Checking a little bit more the behavior of PyQt6 on macOS, interestingly if I press and hold two modifier keys and then release one I start seeing the symbol of the modifier key I'm still pressing 🤔
TODO: Preview single modifier macOS
So I would say that for single modifiers shortcuts, the behavior should be the one PyQt5 shows (the single modifier is shown and bindable when pressing Enter or doing any other actions to make the shortcut box loss focus) but for modifiers + Delete/Backspace should be the one PyQt6 shows (the part where a modifier hold + any other key press and release binds the shortcut, including the usage of Delete/Backspace):

I think the current state of #6406 needs a check to enable offering the behavior described above regardless of OS or PyQt/binding version, but what do you think of things working in that way?


Update sdu.py "TypeError: 'float' object is not subscriptable"

line 1152
TypeError: 'float' object is not subscriptable
https://github.com/spyros-lytras/dinuq/blob/3bef82cf36f40c9e6f3a65722a592dde7e78de0c/dinuq/sdu.py#L1152
When trying to save the result as tsv file. It was easy to solve it, so I did make this Pull request.

Hi!
Thanks for using the package! I'm guessing that you've been trying to export a tsv from an RSCU (relative synonymous Codon usage) dictionary. To do that you will need to use the dinuq.RSCU_to_tsv() module instead of the dinuq.dict_to_tsv() module. The RSCU dictionary output is different from the RSDU & SDU ones, that's why there are two different functions for exporting to a tsv.
Otherwise the code should work fine as it is! (in the case of RSDU & SDU dictionaries pos_list should be a list with either a single value or a value followed by a dictionary of null distribution values, so the pos_list is not a float, but pos_list[0] is one)
Let me know if that clarifies things!
Cheers,
Spyros


Tensors need to be contiguous for consistent results

Hi, thanks for the great tool! I've been using this package in my work, and I've noticed that the tensors often need to be contiguous for results to be consistent (benchmarked wrt tf.searchsorted() and multiple independent calls to torchsearchsorted.searchsorted()).
It'll be great if you could add a word of caution to the README and adopt this style in the examples.
TL;DR. Use a.contiguous() and v.contiguous() before making a call to searchsorted().

thanks for this. I updated the README just now

FYI, this is usually needed only when you modify the underlying storage (eg. by calling view, reshape etc) after creating the tensors. It might have not cropped up in your benchmark/tests cause you typically initialize tensors, and almost immediately use them in searchsorted.
More of a practical issue this.

ok, that makes sense, since we are directly accessing the data in a C-manner in the c++ code
Maybe there's a smarter way to do it ?

There's ways to do it, but they seem to hamper performance (see this discussion).
So, it seems like the best way ahead is to tell people to be extra-cautious when using on a tensor that could've been manipulated by ops like view(), narrow(), permute(), transpose(), etc. that break contiguity. This happens more frequently that you'd imagine; most neural nets have view() operations baked somewhere within.

yeah, ok, that's what I thought
feel free to do some PR if you feel the doc could be better and/or more explicit
thanks again for the feedback

Sure, I'll take a go at it.
Very cool impl, btw!


How to control screen rotate with similar way？

I want design a hardware to achieve Screen Rotate. Its easy to make a hardware. But I dont know upper computer software. Your library was similar to what I think.

There appears to already be a library to do that called rotate-screen by Danny Burrows.
Here's a link to the PyPi page and heres a GeeksForGeeks article showing an example of how to use it.
The only issue is that it only supports Windows at the moment. If you want to rotate the screen using Linux then calling xrandr  via subprocess.check_output is probably your best bet.
Something like subprocess.check_output(['xrandr', '--output', display_name, '--rotate', angle])


Fix PIPIP overlap in chat pane

What

increase the z-index of the PIPIP in the chat and people panes
Why

ensures that the PIPIP is above the items in the chat and people panes.
Before:

After:

https://skype.visualstudio.com/SPOOL/_workitems/edit/2791126
How Tested

Ran locally and visually inspected.

I'll refrain from approving this PR since I contributed to it.


wmi_process_private_bytes not showing correct data

Hi,
I am using wmi_exporter with process collector on for specific processes. I am tracking one java process which is using 25GB RAM memory (see this directly on Windows) but in my Prometheus and Grafana dashboard, I have information that my process use only 4GB RAM memory which is not correct of course.
wmi_process_private_bytes{nodename="$nodename"}
wmi_process_virtual_bytes{nodename="$nodename"}
This is biggest value that I get<PHONE_NUMBER> even try for some other process.
I didn't find that someone reported this issue or I am doing something wrong. I would appreciate some help here. Once set up everything on my side will update the documentation (make PR) with some info for process collector as I saw it is missing.
Thanks.

Thanks for reporting this. Looks like we may be losing precision somewhere.
Noting that<PHONE_NUMBER> is the max value a unsigned 32-bit value can hold.

Yes, that is correct, but Windows used uint64 and if I saw correctly in collector you are using float64 which should work but will let you check this more in detail.
I am using Prometheus operator for k8s and mostly default setup with some custom/additional scrape configs.
This server where the process is running is Windows Server 2019 Datacenter 64-bit and have 31GB RAM memory.
I am using wmi_exporter-0.9.0 version and I turn on process collector for a few processes not for all.
If you need more info please let me know.

Hi @martinlindhe,
Any news on this one? Can I help further?

I did a quick test now where I built a process which simply allocates 10 GB of memory and then checked the exporter output. On my machine (Win10 Pro) it seems to work correctly, however 🤔
Could you check what your output is if you run the corresponding WMI query?
gwmi -Query 'SELECT * FROM  Win32_PerfRawData_PerfProc_Process WHERE <any filters you use>'

Thanks @carlpett for checking and answering. So I run
gwmi -Query 'SELECT * FROM  Win32_PerfRawData_PerfProc_Process WHERE Name LIKE "java%"'
and got correct data
PrivateBytes            :<PHONE_NUMBER>6
So now the question is why I have<PHONE_NUMBER> in my Prometheus for the same java process? I will check maybe it is the Prometheus issue and let you know.

Super interesting! Did you check the /metrics endpoint and see if it is correct there? I would think that it wouldn't be, if you're seeing the wrong results in Prometheus after the scrape, but best check.

@carlpett @martinlindhe I need to apologize to you guys. This is my mistake :( I was using wrong wmi_exporter installation which now makes sense why it is showing only 32-bit value.
Everything is perfect and this is false bug.
I promise I will update some parts of the documentation because you spent your time on this dummy bug, and it was my dummy mistake.


711 modssimpleagent add mcdm only functionality

relates to #515

In 130bf4d the README was updated to give a more complete description of the current functionality as well as how to deploy and develop the MoDS Simple Agent


DCES-237 - Implemented Micrometer counter for apis.

What
Link to story
Describe what you did and why.
Checklist
Before you ask people to review this PR:

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

Where can these counts be seen on Grafana dashboard, or is that part yet to be implemented in Grafana?


Clarify distinction between tasks and tries to run tasks

A task comes from (for example) an app invocation.
A task will be tried 0 or more times: 0 times if there is a memoized result,
more than 1 time if a try fails and a retry happens.
Most of this PR makes this distinction stronger in the monitoring system,
by splitting the 'task' table into two: 'task' and 'try'.
Type of change
Choose which options apply, and delete the ones which do not apply.

New feature (non-breaking change that adds functionality)
Breaking change (fix or feature that would cause existing functionality to not work as expected)

This needs PR #1812 to be merged first, which is an improvement in DAG visualization. DAG visualization before #1812 relies on inferring task state from timestamps in the task table which this PR #1808 removes.
I've marked this PR #1808 as a draft until then.

This is exciting. I will try this after PR #1812 is merged.

@ZhuozhaoLi ready for review


coverage: Allow small drops in coverage

Most PRs change code where no tests have been written so far and where
adding tests is difficult. Codecov fails all those PRs.
These values should be adjusted once we have better integrated testing
into our workflow and have written better testing infrastructure for
modules and very tightly coupled components

Codecov Report

Merging #1518 into master will increase coverage by 2.79%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #1518      +/-   ##
=========================================
+ Coverage    5.92%   8.72%   +2.79%
=========================================
  Files         162     174      +12
  Lines        9037    9977     +940
=========================================
+ Hits          535     870     +335
- Misses       8502    9107     +605

Flag
Coverage Δ

#unittests
8.72% <ø> (+2.79%)
:arrow_up:

Impacted Files
Coverage Δ

tests/unit_tests/utils/string.cpp
100% <0%> (ø)

tests/unit_tests/utils/color.cpp
100% <0%> (ø)

tests/unit_tests/utils/memory.cpp
100% <0%> (ø)

tests/unit_tests/utils/file.cpp
100% <0%> (ø)

tests/unit_tests/utils/scope.cpp
100% <0%> (ø)

...ncurrentqueue/include/moodycamel/concurrentqueue.h
0% <0%> (ø)

tests/unit_tests/components/parser.cpp
100% <0%> (ø)

tests/unit_tests/components/command_line.cpp
100% <0%> (ø)

tests/unit_tests/components/builder.cpp
100% <0%> (ø)

tests/unit_tests/utils/math.cpp
100% <0%> (ø)

... and 2 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 f8e4a59...2950409. Read the comment docs.

Hold off on merging, I seem to have broken something

Codecov Report

Merging #1518 into master will increase coverage by 2.79%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #1518      +/-   ##
=========================================
+ Coverage    5.92%   8.72%   +2.79%
=========================================
  Files         162     174      +12
  Lines        9037    9977     +940
=========================================
+ Hits          535     870     +335
- Misses       8502    9107     +605

Flag
Coverage Δ

#unittests
8.72% <ø> (+2.79%)
:arrow_up:

Impacted Files
Coverage Δ

tests/unit_tests/utils/string.cpp
100% <0%> (ø)

tests/unit_tests/utils/color.cpp
100% <0%> (ø)

tests/unit_tests/utils/memory.cpp
100% <0%> (ø)

tests/unit_tests/utils/file.cpp
100% <0%> (ø)

tests/unit_tests/utils/scope.cpp
100% <0%> (ø)

...ncurrentqueue/include/moodycamel/concurrentqueue.h
0% <0%> (ø)

tests/unit_tests/components/parser.cpp
100% <0%> (ø)

tests/unit_tests/components/command_line.cpp
100% <0%> (ø)

tests/unit_tests/components/builder.cpp
100% <0%> (ø)

tests/unit_tests/utils/math.cpp
100% <0%> (ø)

... and 2 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 f8e4a59...c4f0b87. Read the comment docs.

Alright, fixed it. Ready for review now.


Appveyor build is failing

The current appveyor builds are failing. It looks like just a single test:
================================== FAILURES ===================================
______________________________ test_multi_layer _______________________________
    def test_multi_layer():
        layerdef = "1:coutwildrnp,1:coutwildrnp"
        runner = CliRunner()
        result = runner.invoke(
            cat.cat, ['--layer', layerdef, 'tests/data/'])
>       assert result.output.count('"Feature"') == 134
E       assert 0 == 134
E        +  where 0 = <built-in method count of str object at 0x00000000047F68B0>('"Feature"')
E        +    where <built-in method count of str object at 0x00000000047F68B0> = 'Aborted!\n'.count
E        +      where 'Aborted!\n' = <Result SystemExit(1,)>.output
tests\test_fio_cat.py:80: AssertionError
---------------------------- Captured stderr call -----------------------------
DEBUG:Fiona:Creating a not-responsible GDALEnv in drivers()
DEBUG:Fiona:Option CPL_DEBUG=b'OFF'
ERROR:fio:Exception caught during processing
Traceback (most recent call last):
  File "C:\projects\fiona\fiona\fio\cat.py", line 69, in cat
    with fiona.open(path, layer=lyr) as src:
  File "C:\projects\fiona\fiona\__init__.py", line 169, in open
    enabled_drivers=enabled_drivers, **kwargs)
  File "C:\projects\fiona\fiona\collection.py", line 147, in __init__
    self.session.start(self)
  File "fiona\ogrext.pyx", line 435, in fiona.ogrext.Session.start (fiona/ogrext.c:9107)
    raise FionaValueError(
fiona.errors.FionaValueError: No dataset found at path 'tests/data/' using drivers: *
========= 1 failed, 525 passed, 44 skipped, 4 xpassed in 9.56 seconds =========

https://ci.appveyor.com/project/sgillies/fiona/build/1.0.178

Looks like replacing tests/data/ with os.path.join('tests', 'data') did the trick (See https://github.com/Toblerity/Fiona/pull/415).

I started looking into the on windows disabled tests in this branch: https://github.com/rbuffat/Fiona/tree/fix_windows_tests
It looks that most of them fail due to the different path separator.

@sgillies
Currently the path of vsimem is constructed as follows:
vsi_filename = os.path.join('/vsimem', uuid.uuid4().hex)
on Windows this results in paths like /vsimem\something, which then fails the test:
self.assertTrue(repr(self.c).startswith("<closed BytesCollection '/vsimem/"))
I think mixing / and \ in a path is not a good idea. This leaves two options, using "/" as seperator for vsimem paths or stick to either / or \ depending on the platform. What is your opinion about that?

I brought down the number of skipped tests to 10. Most of it in test_multiconxn.py. This fails with "The process cannot access the file because it is being used by another process"
Currently my commit history of https://github.com/rbuffat/Fiona/tree/fix_windows_tests is a bit of a mess, because I was debugging on appveyor. If somebody has some hints how I could merge these commits into 2-3 nice ones, it would be very helpful.

@rbuffat You could do a $ git rebase and squash related commits together.
http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html
If you're not familiar with rebasing, you can start an interactive session with:
$ git rebase -i ef9a7a6d7d04b600844c65164f672fe23e84dca6

which lets you modify every commit after ef9a7a6d7d04b600844c65164f672fe23e84dca6.
Just skimming the commit history, your rebase might look something like:
pick da524f1 fix windows tests
pick 5ecd248 clean
pick 8381c89 change paths
pick 53de6ed transform paths test_collection.py
squash c19e420 transform paths test_collection.py
pick 2fc72c0 transform paths test_vfs.py
squash 950298b transform paths test_vfs.py
squash 9db9b30 transform paths test_vfs.py
pick 4769cc2 transform paths test_collection.py
squash 30393aa transform paths test_collection.py
squash dc9ff54 transform paths test_collection.py
pick 5710c9f fio load
pick dab0d10 fio info
pick 145701f fio bytescollection
pick 297a5d1 remove all skip fixme windows
pick 6fbd583 bytescollection debug output
squash c8507ec bytescollection debug output
pick df1946c fix /vsimem
pick 0dbb269 debug output
squash 8918d16 debug output
squash 95ac657 debug output
squash f6490f4 debug output
squash 1680d9e debug output
pick 3a5ff56 test_layer paths
pick 1350c54 force utf8 bytescollection
pick 5c0a9b8 remove skips test_collection.py
pick 8436903 test_fio_collect
pick 2ff6a1b remove fixme
pick 28a449b revert test_multiconxn.py

The rebase is processed from top to bottom, so the first 4 commits used as is, the 5th is combined into the 4th, the 6th is used as is, and then the 7th and 8th are combined into the 6th.
If anything goes wrong you can do $ git rebase --abort.  Finally, the rebase must be pushed with --force as the commit ID's have changed.

@geowurster thanks for the tip with rebase! I had some problems with merge conflicts, so I ended up creating a new branch and checkout the changed files. But I'm sure this knowledge will be helpful to me in the future.


Chat bot shown up in block library

chat bot should not load in block library

https://github.com/aemsites/icicidirect/pull/189


Support e2e tests / example YAMLS for behaviour behind feature flags

Expected Behavior
I should be able to write e2e tests or YAML examples that require feature flags be set a specific way.
Actual Behavior
Currently doing so would potentially break other tests running in the same cluster since the feature flags are cluster-scoped.
Additional Info
Couple ideas that have been floated to fix this so far:

What if Tekton Pipelines could be set to only watch individual namespaces?

this would allow a test to set feature flags that are isolated solely to its own pipelines controller.
added benefit: multiple tekton pipelines deployments could live in a single cluster

What if feature flags could be set on a per-namespace basis?

this would allow a test to set feature flags isolated solely to their own testing namespace (i.e. "arendelle-XXXX")

Reopening as I'd still like Tekton to be able to test code gated behind feature flags.
/reopen
/remove-lifecycle stale
/remove-lifecycle rotten

I'd like to see an approach here that avoids having to run the end to end tests for every combination of feature flags; e.g. specific tests that are targeted at each flag. @vdemeester was mentioning using annotations to turn feature flags on and off in some cases, that might make it easier to make tests aimed at each flag.
if we DO decide we need to run all the tests for each flag (and combo) maybe we can do it nightly or similar, i.e. not on every PR

Yeah, agreed.  I'm personally much less concerned about the interaction of flag combinations than I am about being able to e2e test code behind flags at all.  I like the annotations idea!

/reopen
/lifecycle frozen
We should tackle this still