Hand mesh & joint visualization access inconsistent with profile best practices

Describe the bug
The implied (#5012) best practices for MRTK services + profile consumption is:

Modify profile at edit-time
At runtime, profile is read on service/provider creation
Further modify service/provider configuration through exposed Properties on respective service/provider.

There is an exception to this approach regarding toggling hand mesh & joint visualizations.
To reproduce
MixedRealityServiceRegistry.TryGetService<IMixedRealityInputSystem>(out IMixedRealityInputSystem inputSystem);
MixedRealityHandTrackingProfile handTrackingProfile = inputSystem?.InputSystemProfile?.HandTrackingProfile;
if (handTrackingProfile != null)
{
        handTrackingProfile.EnableHandMeshVisualization = visualizeHandMesh;
}

Expected behavior
I would expect the IMixedRealityInputSystem or IMixedRealityHandJointService to have exposed Properties, allowing me to update the hand mesh & joint configuration settings.
Your Setup (please complete the following information)

Unity Version 2018.4.12f1
MRTK Version mrtk_development

Target Platform (please complete the following information)

HoloLens 2

Also related #4713

We appreciate your feedback and thank you for reporting this issue.
Microsoft Mixed Reality Toolkit version 2 (MRTK2) is currently in limited support. This means that Microsoft is only fixing high priority security issues. Unfortunately, this issue does not meet the necessary priority and will be closed. If you strongly feel that this issue deserves more attention, please open a new issue and explain why it is important.
Microsoft recommends that all new HoloLens 2 Unity applications use MRTK3 instead of MRTK2.
Please note that MRTK3 was released in August 2023. It features an all new architecture for developing rich mixed reality experiences and has a minimum requirement of Unity 2021.3 LTS. For more information about MRTK3, please visithttps://www.mixedrealitytoolkit.org.
Thank you for your continued support of the Mixed Reality Toolkit!


Display information on module versions, remove PROTEUS.env

This PR adds functionality to print information about the current module arrangement and corresponding code versions. This goes towards solving the main problem of #240, but we should revisit it further to maybe add a command like proteus update to the CLI.
Also removes PROTEUS.env, which should make the code easier to use for new people. Instead of setting variables in the user's environment, the code locates the appropriate directories when it starts.
Updated documentation. PROTEUS version 24.10.30.
Example of the new information printed to the log:
[ INFO  ] :::::::::::::::::::::::::::::::::::::::::::::::::::::::
[ INFO  ]                    PROTEUS framework
[ INFO  ]                    by Forming Worlds
[ INFO  ] :::::::::::::::::::::::::::::::::::::::::::::::::::::::
[ INFO  ]
[ INFO  ] Current time      2024-10-31 11:15:11
[ INFO  ] Python version    3.13.0
[ INFO  ] System hostname   atmlxint6.atm.ox.ac.uk
[ INFO  ] System username   nichollsh
[ INFO  ] Platform type     Linux
[ INFO  ] FWL data path     /network/group/aopp/planetary/RTP035_NICHOLLS_PROTEUS/fwl_data/
[ INFO  ]
[ INFO  ] PROTEUS version   24.10.30
[ INFO  ] PROTEUS location  /home/n/nichollsh/PROTEUS/
[ INFO  ] PROTEUS git hash  a1ff01aaf3e796294705663fc8b4e6b6f863bae9
[ INFO  ] Config file       /home/n/nichollsh/PROTEUS/input/hd63433d.toml
[ INFO  ] Output path       /home/n/nichollsh/PROTEUS/output/hd63433d/
[ INFO  ]
[ INFO  ] Interior module   spider version 0.2.0
[ INFO  ]   - PETSc         version <IP_ADDRESS>
[ INFO  ] Structure module  None
[ INFO  ] Atmos_clim module agni version 0.10.0
[ INFO  ]   - SOCRATES      version 2407.2 at /home/n/nichollsh/SOCRATES/
[ INFO  ]   - Julia         version 1.11.1
[ INFO  ] Outgas module     calliope version 24.09.10
[ INFO  ] Escape module     None
[ INFO  ] Star module       dummy
[ INFO  ] Orbit module      None
[ INFO  ] Delivery module   None
[ INFO  ]
[ INFO  ] ---------------------------------------------------
[ INFO  ] Total mantle mass = 3.57e+24 kg
[ INFO  ] Initial inventory set by 'elements'
[ INFO  ] Included gases
[ INFO  ]     volatile  H2O      :   0.00 bar
[ INFO  ]     volatile  CO2      :   0.00 bar
[ INFO  ]     volatile  H2       :   0.00 bar
[ INFO  ]     volatile  CH4      :   0.00 bar
[ INFO  ]     volatile  CO       :   0.00 bar
[ INFO  ]     volatile  N2       :   0.00 bar
[ INFO  ]     volatile  S2       :   0.00 bar
[ INFO  ]     volatile  SO2      :   0.00 bar
[ INFO  ]     vapour    SiO      :   0.00 bar
[ INFO  ]     vapour    SiO2     :   0.00 bar
[ INFO  ]     vapour    MgO      :   0.00 bar
[ INFO  ]     vapour    FeO2     :   0.00 bar
[ INFO  ]
[ INFO  ] Getting physical and reference data
[ INFO  ] Preparing stellar model
[ INFO  ]
[ INFO  ] ===================================================

Thanks @timlichtenberg! I am hoping that these kinds of changes will make it easier to involve more people with the code.
I just found another small issue with the config validation that Stef added: it tries to log a warning before the log has been setup, so it doesn't actually warn the user of anything. This is an easy fix, so I'll merge this once the tests pass again.


Doesn't change ios/* names

Hello,
react-native-rename dosn't change name of files in 'ios' dir, This is a sample:
D:\Project\MyProject>react-native-rename "TheName"
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
\android\app\src\main\res\values\strings.xml MODIFIED
\index.js MODIFIED
\package.json MODIFIED
\app.json MODIFIED
\android\settings.gradle MODIFIED
\app.json MODIFIED
The system cannot find the path specified.
The system cannot find the path specified.
\android\app\BUCK MODIFIED
\android\app\build.gradle MODIFIED
\android\app\src\main\AndroidManifest.xml MODIFIED
Done removing previous bundle directory.
Done removing builds.
APP SUCCESSFULLY RENAMED TO "TheName"! 🎉 🎉 🎉
Please make sure to run "watchman watch-del-all" and "npm start --reset-cache" before running the app.

System Info:
--- Windows 10 Enterprise
--- React Version : 16.2.0
--- React Native Version : 0.52.2

I had the same exact issue when I just tried running the rename tool as well. Same results.
System Info:
--- Windows 10 Home
--- React Native Version: 0.51
created using react-native init

This issue may be specific to Windows.

Facing the same issue.
@junedomingo need help!

Any solution anyone? I am getting this on Windows 10

same errors on OSX

have same errors on OSX

Hi guys!
The problem seems to be related with the name contained in the android/app/src/main/res/values/strings.xml file.
The developer is using that app_name value to iterate over the files under the ios folder.
I suggest to use the one in the app.json defined as name.
So, if you want a quick fix, change the app_name with the one used by ios.

Thanks @flaviocolonna this resolved my issue.

@junedomingo
This issue is on this where you have added 2>/dev/null, which doesn't exist on Windows 10, reference: Windows equivalent of “> /dev/null &”
https://github.com/junedomingo/react-native-rename/blob/d27289fa74c55991efe2b923ab29972e4abac140/src/index.js#L122
What I did was gone to the global npm package where I installed the package: react-native-rename and changed the line. Developers, if you wish to also make it work on Windows. @mehranabi
Go to
C:\Users\<username>\AppData\Roaming\npm\node\node_modules\react-native-rename\lib
open index.js line:160:
Change 2>/dev/null to 2>NUL
I tested and the code runs properly on macOS but didn't on Windows.

This problem seem caused by the Bundle Name and the Project Folder Name mismatch. A quick solution which i used is:
react-native-rename "DesiredName"   this will output invalid path error. then:
react-native-rename "CurrentName"   this will solve the issue about the path to check for. then finally:
react-native-rename "DesiredName"


[$250] when selecting categories, the selected categories get reset if we click outside the checkbox

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.36-1
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @rushatgabhane
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1725906909191599
Action Performed:

Enable categories on a controlled workspace
Click More features > Categories > Click check box to select all categories
Click on any row to select individual category

Expected Result:
RHP opened for selected category and other category remain selected
Actual Result:
RHP opened for the category and all other categories are reset (Unchecked)
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/user-attachments/assets/c70804b4-fad5-4664-9503-65335a48dd4a
https://github.com/user-attachments/assets/28f50025-55a1-4324-a1c6-5318a074ad3f
Add any screenshot/video evidence

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~021835867544323146964
Upwork Job ID:<PHONE_NUMBER>323146964
Last Price Increase: 2024-09-17

Issue OwnerCurrent Issue Owner: @

@jliexpensify could you please assign me. I want to C+ this because I raised this issue

Done, I think Design is still weighing in though?

Expected behavior 1:

Even if you open the details of a category, it shouldn't deselect the categories.
This is actually the expectation I think I would have. Basically the same exact behavior as Gmail

Expected behavior 2:
When you're in selection mode on small screens, you should be able to tap anywhere to select the category.

I'll post an update on the expected result whenever design team has reached a decision

Expected result:

On web, make it like gmail.
a. You can select by tapping checkbox.
b. If you tap a row, it’ll open the category.
c. Tapping a row should not dismiss the selected categories

On mobile, if you’re in selection mode you should be able to tap anywhere to select the row.

(source)

Proposal
Please re-state the problem that we are trying to solve in this issue.
RHP opened for the category and all other categories are reset (Unchecked)
What is the root cause of that problem?

This useEffect logic:
https://github.com/Expensify/App/blob/28e9fa9f0ae0bac70d6b3e2161bf00712aeffefa/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L90-L93 cause the issue that all the selected categories are clear when we click on any category to open its detail page.

What changes do you think we should make in order to solve the problem?

In this post, I will propose a solution that matches these requirements:

On web's requirements.

Remove the logic causing this issue:
https://github.com/Expensify/App/blob/28e9fa9f0ae0bac70d6b3e2161bf00712aeffefa/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L89-L94

and use:
    useEffect(() => {
        setSelectedCategories({});
    }, []);

instead.

On mobile's requirements:

Update this logic:

https://github.com/Expensify/App/blob/28e9fa9f0ae0bac70d6b3e2161bf00712aeffefa/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L136
so that it will call toggleCategory(category) if isSmallScreenWidth && selectionMode?.isEnabled is true:
    const navigateToCategorySettings = (category: PolicyOption) => {
        if (isSmallScreenWidth && selectionMode?.isEnabled) {
            toggleCategory(category);
            return;
        }

What alternative solutions did you explore? (Optional)

Proposal
Please re-state the problem that we are trying to solve in this issue.

when selecting categories, the selected categories get reset if we click outside the checkbox

What is the root cause of that problem?

we reset selections every time category page goes out of focus here
https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L89-L94

What changes do you think we should make in order to solve the problem?

Create a new state to hold information whether selection should be preserved or not

    const [preserveSelection, setPreserveSelection] = useState(false);

set preserveSelection to true when navigating to certain pages for which we want to preserve selection.
check condition for !shouldUseNarrowLayout if we want selections to be preserved only for desktop devices.

    const navigateToCategorySettings = (category: PolicyOption) => {
        if(!shouldUseNarrowLayout) {
            setPreserveSelection(true);
        }
        if (backTo) {
            Navigation.navigate(ROUTES.SETTINGS_CATEGORY_SETTINGS.getRoute(policyId, category.keyForList, backTo));
            return;
        }
        Navigation.navigate(ROUTES.WORKSPACE_CATEGORY_SETTINGS.getRoute(policyId, category.keyForList));
    };

https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L136-L142

Modify useEffect .... to preserve selection when preserveSelection === true

    useEffect(() => {
        if (isFocused || preserveSelection) {
            setPreserveSelection(false);
            return;
        }
        setSelectedCategories({});
    }, [isFocused]);

https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L89-L94

similar approach should be applied on other workspace pages (Members, Distance rates, Tags, Report Fields, Taxes)

What alternative solutions did you explore? (Optional)
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

Results for above proposal
https://github.com/user-attachments/assets/ecdeac88-8b8c-4da5-8349-d1418e997c52
https://github.com/user-attachments/assets/ea3e661f-685b-4743-bd38-9dfa29bfa1e0

Updated proposal to remove redundant code changes and add an explanation.

Let's go forward with @truph01's proposal
C+ reviewed 🎀 👀 🎀

@rushatgabhane just a note @truph01's solution do not clear categories even for other cases like switching to tags page and come back, so it does not align with the expectations.
Just to be more precise on expectations

selections should not clear after taping raw
selection should be cleared upon visiting other pages like Tags, Workflow, etc... and coming back

this is what I concluded from expectations posted by you.

sorry i didn't know that we should remove selected categories if we navigate away

@ChavdaSachin for mobile, we want the categories to select if you tap anywhere on the row when in selection mode.

give me a minute

Proposal
updated
re-formatted to align with template

Proposal
Please re-state the problem that we are trying to solve in this issue.

when selecting categories, the selected categories get reset if we click outside the checkbox

What is the root cause of that problem?

we reset selections every time category page goes out of focus here
https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L89-L94

What changes do you think we should make in order to solve the problem?

Create a new state to hold information whether selection should be preserved or not

    const [preserveSelection, setPreserveSelection] = useState(false);

set preserveSelection to true when navigating to certain pages for which we want to preserve selection.
check condition for !shouldUseNarrowLayout if we want selections to be preserved only for desktop devices.

    const navigateToCategorySettings = (category: PolicyOption) => {
        if(!shouldUseNarrowLayout) {
            setPreserveSelection(true);
        }
        if (backTo) {
            Navigation.navigate(ROUTES.SETTINGS_CATEGORY_SETTINGS.getRoute(policyId, category.keyForList, backTo));
            return;
        }
        Navigation.navigate(ROUTES.WORKSPACE_CATEGORY_SETTINGS.getRoute(policyId, category.keyForList));
    };

https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L136-L142

Modify useEffect .... to preserve selection when preserveSelection === true

    useEffect(() => {
        if (isFocused || preserveSelection) {
            setPreserveSelection(false);
            return;
        }
        setSelectedCategories({});
    }, [isFocused]);

https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L89-L94

And for Mobile check for selection mode while passing onSelectRaw prop call toggleCategory(item) if selectionMode?.isEnabled else call navigateToCategorySettings(item)

                        onSelectRow={(item) => {selectionMode?.isEnabled ? toggleCategory(item): navigateToCategorySettings(item)}}

https://github.com/Expensify/App/blob/28e9fa9f0ae0bac70d6b3e2161bf00712aeffefa/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L398

similar approach should be applied on other workspace pages (Members, Distance rates, Tags, Report Fields, Taxes)

What alternative solutions did you explore? (Optional)
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

Don't know why my proposal was getting rejected by bot, so re wrote the proposal.

cool, let's assign @ChavdaSachin https://github.com/Expensify/App/issues/49322#issuecomment-2354681501

Thank you @rushatgabhane.
A question - should I implement this for other pages (Members, Distance rates, Tags, Report Fields, Taxes) as well ?

@truph01 it was intentionally not preserved

@rushatgabhane From the workspace category page, we can open the category detail page by two cases:

Click on the category (the case in this issue).

Using deeplink.

Although we want to clear the selected options when navigating to another page, the solution you've chosen only resolves the issue in case 1, where preserveSelection is set to true. In case 2, the issue remains unresolved.

can you please elaborate the deeplink case? maybe steps for it

it was intentionally not preserved for selection of categories, members etc

I think this is because we assume the behavior "you selected options on screen A, navigated to screen B, and returned to A, the selected options were not cleared" is a bug and fixed all the behavior in others pages as you mentioned  workspace member pages, workspace tags pages in this PR.

Made intentional in PR - https://github.com/Expensify/App/pull/40136

@rushatgabhane I updated my comment to add another test case.

Here's my test branch for your convenience.

Proposal
[updated] (https://github.com/Expensify/App/issues/49322#issuecomment-2354681501) added a line for optional fix.

@MonilBhavsar What do you think about my thought?

set preserveSelection to true when navigating to certain pages for which we want to preserve selection.

@ChavdaSachin have we discussed for which pages we want to preserve selection and for which changes we don't want to.
I feel like we should just have same behavior for all workflows to keep it simple

A's state should naturally be preserved.

@truph01 by "naturally preserved" you mean keep the selection or initialize it by removing all the selections?

Okay @MonilBhavsar so just for the sake of additional clarity,

On web we should preserve selections when clicking raw and coming back.
Similarly it should be preserved when opening and closing import categories page.
on mobile - when selectionMode is enabled - clicking a raw should toggle category rather then navigating t category page.

Quick question:
In addition to workspaceCategories page, Imo we should implement same behavior for following workspace pages

Members
Distance rates
Tags
Report Fields
Taxes
Right ?

And here in this PR it is made clear that we want to clear selection when navigating to other workspace pages.
As already pointed out by @rushatgabhane https://github.com/Expensify/App/issues/49322#issuecomment-2354750241

by "naturally preserved" you mean keep the selection or initialize it by removing all the selections?

I mean "keep the selection"

In addition to workspaceCategories page, Imo we should implement same behavior for following workspace pages

Members
Distance rates
Tags
Report Fields
Taxes
Right ?
That would be great to check for all pages and ensure they have identical behavior!

And here in this https://github.com/Expensify/App/pull/40136#issue-2238369263 it is made clear that we want to clear selection when navigating to other workspace pages.

Okay, thanks for the context

I mean "keep the selection"

👍 Looks like we don't want to keep the selection, atleast when navigating from other pages

Looks like we don't want to keep the selection, atleast when navigating from other pages

I will update the proposal to match this requirement.

@rushatgabhane Looks like there are lot of changes since you last reviewed. Would you like to take a look again please

I updated proposal. cc @rushatgabhane

I updated proposal. cc @rushatgabhane

Proposal
Please re-state the problem that we are trying to solve in this issue.
when selecting categories, the selected categories get reset if we click outside the checkbox
What is the root cause of that problem?
https://github.com/Expensify/App/blob/539327dc2d0585624e5e0b990ca0d79f4e66e81b/src/pages/workspace/categories/WorkspaceCategoriesPage.tsx#L93
What changes do you think we should make in order to solve the problem?
Remove this line
setSelectedCategories({});
What alternative solutions did you explore? (Optional)

@rushatgabhane Can you help re-review my proposal?

@rushatgabhane if you could please take a look when you get a chance

Bumping @rushatgabhane here!

Am going to DM @rushatgabhane on Slack

hello! i still think that we should assign @ChavdaSachin because their proposal was first (and meets all the requirements)

@rushatgabhane That solution does not fix the case we click on "import spreadsheet" on other pages such as the tags pages

@truph01 could you please add steps and what you expect to happen, so that we're on the same page

i feel that we should just go with @ChavdaSachin's proposal and any minor issues can be ironed out in the PR

In the future, If we introduce a new component like "Import spreadsheet" button (click on it will navigate to other screen), the bug will appear again.

i feel that we should just go with @ChavdaSachin's proposal and any minor issues can be ironed out in the PR

Also, do you have any feedback about my proposal? So I can improve it in other issues. Thanks

Also, do you have any feedback about my proposal? So I can improve it in other issues. Thanks

@truph01
@ChavdaSachin pointed out an issue in your proposal here. So I felt it did not meet the requirements.

selections should not clear after taping raw
selection should be cleared upon visiting other pages like Tags, Workflow, etc... and coming back

@rushatgabhane I`ve updated my proposal via comment here to match that requirement.

selections should not clear after taping raw
selection should be cleared upon visiting other pages like Tags, Workflow, etc... and coming back

Maybe you miss that comment.

i know, you have updated but @ChavdaSachin was the one to point it and fix it. So I consider their proposal as the one that came first.

Ah, I’m a newbie, and I think we should consider the advantages each solution brings to the app, in addition to the order of the proposals.
However, it seems we tend to choose the first solution that resolves the issue, even if the second one is more general and robust. I'll keep that in mind for future proposals. Thanks!

Pr Draft is ready, I have checked functionality thoroughly, and will upload videos in few hours.
cc. @rushatgabhane @MonilBhavsar

PR ready for review.
cc. @rushatgabhane @MonilBhavsar

@ChavdaSachin please wait until the assignment

@MonilBhavsar FYI, C+ has choosen proposal based on comment. Just wait for your final review.
If possible, please take a look at my proposal as well. FYI, both proposals are nearly the same, except for how they handle the following:

selections should not clear after taping raw
selection should be cleared upon visiting other pages like Tags, Workflow, etc... and coming back

Yep, a long discussion in this issue https://github.com/Expensify/App/pull/40136
And, we concluded that selection should be cleared when navigated away

Thanks for linking Monil

@truph01 Linking a POC or test branch would have been helpful to verify such proposals

@MonilBhavsar Thanks. The test branch for the solution here: https://github.com/truph01/App/tree/fix/49322.

@MonilBhavsar 2 more input from my side.

The new hook suggested by truph01 would break on WorkspaceMembersPage, WorkspaceReoprtFieldsPage, PolicyDestanceRate, and WorkspaceTaxesPage. These pages store selected item list as array while the new hook only covers the case if list is stored as object.
If we still decide to fine tune @truph01's solution and move ahead then I recommend to create handle functions for onSelectRaw, rather than modifying navigation function. IMO a navigation function should not have any other functionality rather than navigation.

These pages store selected item list as array while the new hook only covers the case if list is stored as object

Thanks. It is easy to address in PR stage. Instead of passing the set function such as:
const useCleanupSelectedOptions = (setFunction: ({}: any) => void) => {

we can pass the cleanup function:
const useCleanupSelectedOptions = (cleanupFunction: () => void) => {

@MonilBhavsar - just a heads up, I'm OOO from 3rd to 14th, but I don't think anything is needed from me during this period. Feel free to reassign to another B0 if needed though!

I have found additional case of possible regression,
If we preserve selections and delete category from categorySettingsPage, selection counter on header would not update.
https://github.com/user-attachments/assets/4d8b42a9-9e86-4f85-9dfb-2562fa7f6879
So for that problem - In addition to My Proposal we need to include a new function - refreshSelection
    const refreshSelection = () => {
        const availableCategories = categoryList.filter((category) => category.pendingAction !== CONST.RED_BRICK_ROAD_PENDING_ACTION.DELETE);
        setSelectedCategories(Object.fromEntries(availableCategories.map((item) => Object.keys(selectedCategories).includes(item.keyForList) ? [item.keyForList, true]: [])));
    }

and make a function call on focus.
    useEffect(() => {
        if (isFocused || shouldPreserveSelection) {
            setShouldPreserveSelection(false);
            refreshSelection();
            return;
        }
        setSelectedCategories({});
        // eslint-disable-next-line react-compiler/react-compiler, react-hooks/exhaustive-deps
    }, [isFocused]);

@ChavdaSachin @truph01 Thanks so much for digging into the root cause and proposing solutions to fix this bug! After reviewing, It looks like that combining both of your solutions would get us to the complete, efficient and scalable fix. A good instance to showcase team work and work on this bug together!?
We would like to fix this issue happening for all pages and all instances as pointed by @ChavdaSachin
While we also want to make it scalable by simply creating a hook and using it in the new similar page we might create in future, as proposed by @truph01
Would you be up for teaming up to work on this issue together? If so, we'll split the bounty between both of you.
Please comment here and let us know if you're down to collaborate!

@MonilBhavsar I’m happy to have a team collaborate on this issue if both proposals contribute to resolving the bugs. But here is my thoughts about the bug:

"If we preserve selections and delete category from categorySettingsPage, selection counter on header would not update."

I don't believe this is a regression, as the bug existed before. If you try selecting 3 categories in one tab, then try to delete one of them in another device/browser, the counter doesn't update correctly as well. This happens because we don't have a mechanism in place to automatically update the header counter when a category is deleted.

The solution suggested here seems more like a workaround, as the useEffect is only triggered when isFocused changes. As a result, it cannot fix the case I mentioned above.

If we still want to fix that bug in this issue, I think we need to create a new hook so that we can use it in other pages:

import {useEffect} from 'react';
import {ListItem} from '@components/SelectionList/types';

const useAutoUdpateSelectedOptions = (listItem: ListItem[], selectedOptions: Record<string, boolean>, setSelectedOptions: React.Dispatch<React.SetStateAction<Record<string, boolean>>>) => {
    useEffect(() => {
        const availableOptions = listItem.filter((o) => !o.isDisabled).map((o) => o.text);
        const originalSelectedOptions = Object.keys(selectedOptions);
        const newSelectedOptions = originalSelectedOptions.filter((o) => availableOptions.includes(o));
        setSelectedOptions(
            newSelectedOptions.reduce((acc, key) => {
                acc[key] = true;
                return acc;
            }, {}),
        );
    }, [listItem]);
};
export default useAutoUdpateSelectedOptions;

It will auto-update the selected options once the options change.
then use it in workspace category page or other similar pages:
useAutoUdpateSelectedOptions(categoryList, selectedCategories, setSelectedCategories);

Since fixing that bug will expand the scope of the issue and require additional testing, I believe we should consider increasing the issue price if we still want to fix that bug, or we can create a new separate issue.

Hi @MonilBhavsar - I'm back, anything needed from me? Also, looks like we have this comment to be addressed, especially around payment. It seems like it could be a big job so happy to consider an increase - thoughts?

@MonilBhavsar What do you think about my thoughts?

Bumping @MonilBhavsar for a review!

@MonilBhavsar Please help take a look at this issue once you have a chance. Thanks

@MonilBhavsar Please take a look at my comment when you have a chance. Thanks

Bumping @MonilBhavsar for a review.

Have DM-ed Monil

Thanks 👍

Thanks Monil - so here's a tentative Payment Summary

C: @truph01 $200
C: @ChavdaSachin $50
C+: @rushatgabhane $250 (to be paid via N.D requests)

Damn, I thought that would auto-create a new job (the old one is expired). Will manually create one then.

@truph01 what's your Upworks profile? Could you add it (or your name) to your GH profile? Thanks.

@jliexpensify I accepted this automatic offer. Correct amount ($200) could be paid out on that offer later.

@truph01 what's your Upworks profile? Could you add it (or your name) to your GH profile? Thanks.

Sure, I added my profile link to GH profile.

@truph01 thanks! Upworks does this annoying thing where after a month, it closes jobs and we can't pay out on them. So I had to create a new job and hire you.

PR is ready @rushatgabhane

I'm OOO until the 29th, feel free to reassign if payment is required before then - otherwise will handle when I get back.

Bumping @rushatgabhane for the checklist.
Payment summary


Upload image via Camera + resize

Hi,
I am using the Camera to capture and upload image, I wanted to resize the image before upload, how can this be done.
thanks

Hi!
Man, from the moment you get the file and post on page, u can control the file after your upload to server. There's severals ways to do it: aspnet, PHP, even javascript.
Or you can make an intent after call the camera to make are you need to reside/crop the image


fix(next-app-router): mitigate memory leak

Summary
Got reports of memory leaks with the Next.js App Router solution.
It seems partly related to ServerInsertedHTML or maybe just the fact that renders are streamed.
Result
Prior to the change, on an index with stringified results weighing ~50kb, for 500 concurrent requests we had a peak of 1GB which reduced to 600mb when idle.
By moving the initialisation of createInsertHTML so that it does not capture the scope of the whole component, it peaks at 600mb then reduces to 160mb when idle.
There are definitely more ways this could be improved as I see stringified results are kept in memory way after, so does certain React nodes with results in them. Should try to see with the Next.js team perhaps.

Hi @aymeric-giraudet It seems like next.js with its addInsertedHtml function causes a memory leak issue. If I comment out insertHTML call the memory leak is gone that of course breaks SSR. Have you considered not using ServerInsertedHTML but return

Hey @pkutsenko,
Tried changing it to a component on this branch : https://github.com/algolia/instantsearch/commit/68c8c577592b24b1ce83166d8c4c947db290022c and I get the exact same results, so that's not the issue.
I identified another memory leak in the Node.js requester in algoliasearch. Some handlers that retain responses as string are not cleared. By using the fetch requester instead (install the @algolia/requester-fetch) and use that instead :
import { liteClient as algoliasearch } from 'algoliasearch/lite';
import { createFetchRequester } from '@algolia/requester-fetch';
const searchClient = algoliasearch(
  appId,
  apiKey,
  { requester: createFetchRequester() }
);

Note that I'm using algoliasearch v5 with @algolia/requester-fetch matching the same version, should still work with v4 though but you can update if it doesn't
Now after 500 parallel requests it goes down to 40Mb at the end rather than 160Mb. That's using react-instantsearch-nextjs at 0.3.14 of course.
I still see some retained objects but I think it's Next.js/webpack at this point which we can't do anything about.


$null is no longer accepted to mean "make no change"

Describe the bug
Line 284: $null value is no longer accepted to mean "keep current values" and API call throws an error. Script returns to the Continue or exit prompt.
To Reproduce
Steps to reproduce the behavior:

Run current script as is selecting at least one table
Provide a total storage time in days
PowerShell will throw an error
The script will continue to the Continue or Exit prompt and when selected continue and table data is returned, no change was done to the table selected previously.

Expected behavior
No error in the API call resulting in updated table properties.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Windows 10.0.19043.1237
Browser [e.g. chrome, safari]
Version [e.g. 22]

Additional context
Replacing $null in the code with the hardcoded value allows the script to run successfully. Ideally a variable shall be used.
Sorry, did not have enough time to identify appropriate variable.
Thanks for the script! Very handy!

Just used the most recent version again and looks like the problem is still there (https://github.com/Azure/Azure-Sentinel/blob/master/Tools/Archive-Log-Tool/ArchiveLogsTool-PowerShell/Configure-Long-Term-Retention.ps1) line 292.
Script fails as is, but works if '$null' is replaced by '90'.

We wanted to check on the status of Issue https://github.com/Azure/Azure-Sentinel/issues/5456. The issue is pending for more than expected days. Please let us know if you need any assistance to review this Issue. As per our standard operating procedures if no response is received in the next 7 business days, we will close this Issue. Thank you for your cooperation.

Since we have not received a response in the last 7 days, we are closing your issue as per our standard operating procedures. If you still need support for this issue, feel free to re-open at any time. Thank you for your co-operation.


.workspace file not honoring tab settings

Type: Bug

Select File / Save Workspace As and press Enter to save.
Open .workspace file
See issue: the file is saved with tabs for indents even though the editor is set to use spaces for indents.

VS Code version: Code 1.74.1 (1ad8d514439d5077d2b0b7ee64d2ce82a9308e5a, 2022-12-14T10:30:51.966Z)
OS version: Windows_NT x64 10.0.19044
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 x 2808)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: disabled_off

Load (avg)
undefined

Memory (System)
31.95GB (16.25GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (12)

Extension
Author (truncated)
Version

svelte-intellisense
ard
0.7.1

file-properties-viewer
bru
1.0.0

path-intellisense
chr
2.8.3

vscode-eslint
dba
2.2.6

gitlens
eam
13.1.1

vscode-ts-whitespace-converter
joh
1.2.1

l13-diff
L13
1.0.3

vscode-json-validate
rio
1.4.3

svelte-vscode
sve
106.3.2

sort-lines
Tyr
1.9.1

remove-empty-lines
use
0.0.12

markdown-all-in-one
yzh
3.5.0

We hardcode to use \t formatting when creating a workspace file:
https://github.com/microsoft/vscode/blob/3567fd1145238028d0d4e83b1c557f6d2c1b349a/src/vs/platform/workspaces/electron-main/workspacesManagementMainService.ts#L177
We could respect the user settings here.

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


Existential Deposit for staking

Codecov Report
Base: 61.15% // Head: 61.18% // Increases project coverage by +0.03% :tada:

Coverage data is based on head (da80339) compared to base (1ffeec7).
Patch coverage: 83.33% of modified lines in pull request are covered.

:exclamation: Current head da80339 differs from pull request most recent head a7ef9bf. Consider uploading reports for the commit a7ef9bf to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #337      +/-   ##
==========================================
+ Coverage   61.15%   61.18%   +0.03%
==========================================
  Files          70       70
  Lines       18649    18669      +20
==========================================
+ Hits        11404    11423      +19
- Misses       7245     7246       +1

Impacted Files
Coverage Δ

pallets/staking/src/mock.rs
94.47% <ø> (ø)

runtime/src/lib.rs
10.96% <ø> (ø)

pallets/staking/src/lib.rs
69.17% <71.42%> (+0.10%)
:arrow_up:

pallets/staking/src/tests.rs
99.89% <100.00%> (+<0.01%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


web server frontpage is not displaying any data

I normally use home assistant to configure Glow and to present the data.
My implementation of Glow is using the default configuration, and is working well inside home assistant.
However, in the readme file I found the following advice for configuring e.g. the pulse rate:
"Open the webserver of the Glow and change the value under Pulse rate - imp/kWh."
When I open the webserver and login, the webpage looks like this:

I can switch between a light and dark scheme, but that's all.
I have not been able to find a description or a picture showing the webpage as it should look.
Am I missing something in the configuration or are some files missing?
BR Poul Anker

Seems like your whole config is no longer present on your glow, you may have to reinstall the firmware to get everything back.

I have now installed Glow on a second device.
The served page looks similar, allthough this time the question marks are gone and the correct images are shown.
I dived into the documentation of the webserver and found, that I could change the webserver version from 2 (default) to 1. Now the webserver serves a simple table, where I indeed can change e.g. the pulse rate.
How is the page supposed to look in the default version?

The table and log view side by side instead of on top of each other


Changing TextEditingController leads to out-of-sync controllers

When you change the TextEditingController of an EditableText, we neither pull the new data from the new controller (which I guess is what we should do) nor push our data to the new controller.
cc @cbracken

Added a test in #12276 to verify we don't regress this.


ctrl-a/ctrl-x do not reliably modify dates

Describe the bug
Depending on where a date is in a file, it may or may not update correctly with ctrl-a/ctrl-x (timestamp_up/timestamp_down).
When the operation fails, the number field is observed to be updated in the opposite direction from that intended, and the update is not recognized as an update to a date field.
Steps to reproduce
Using this test file:
* TODO testing <2024-08-17 Sat>
* stuff <2024-01-17 Wed>
  <2024-02-17 Sat>
  <2024-03-17 Sun>

Placing the cursor the day portion of each line and pressing ctrl-a results in the following behavior for each line:

Incorrectly changes to <2024-08-16 Sat> and day of week does not change
Incorrectly changes to <2024-01-16 Wed> and day of week does not change
Correctly changes to <2024-02-18 Sun>
Incorrectly changes to <2024-03-16 Sun> and day of week does not change

The decrement action is likely a result of nvim default behavior that interprets the value as a negative number (-17), thus increasing it to -16.
Expected behavior
ctrl-a and ctrl-x should recognize the date on each line and increment/decrement accordingly.
Emacs functionality
No response
Minimal init.lua
vim.opt.rtp:prepend(vim.env.REAL_HOME .. "/.local/share/nvim/lazy/orgmode")
require("orgmode").setup {
                        org_agenda_files = { '~/test-orgfiles/**/*', },
                        org_default_notes_file = '~/test-orgfiles/refile.org',
}

Screenshots and recordings
No response
OS / Distro
OSX 14.6.1
Neovim version/commit
NVIM v0.10.1 Build type: Release LuaJIT 2.1.1723675123
Additional context
Tested using commit adf277c
Starting from OrgMappings:_adjust_date_part(), and given that the cursor is on line 1, col 26 when ctrl-a is pressed in the sample file mentioned above, The date object referenced by date_on_cursor contains range.end_col = 29 and range.start_col=14. Considering the line of the sample file:
1234567890123456789012345678901
* TODO testing <2024-08-17 Sat>
             \-start_col     \-end_col

The values are 2 less than they should be to correctly reference this line of text. When increment/decrement work, the start/end_col values reference the locations of the date field delimiters on the line. (I haven't explored why the 4th line doesn't work but it may related to the TODO at the end of OrgMappings:_get_date_under_cursor()
I drilled down and found that in Headline:get_non_plan_dates() the value of headline_text that is used to locate the date does not include the leading *  from the buffer. This would explain the off-by-two error in locating the date in the original line.
I haven't sorted out what the functions are doing to set the value of headline_text (I'm still learning Lua) but this is getting close to where the problem is. I think the fix is to ensure that the headline text represents the full line of text, but I'm both unclear how to do that, and unclear what other side effects that may have on callers that expect this section of code to be working based on tree sitter objects vs. lines of text. Given my lack of understanding, it's also possible that OrgMappings:_adjust_date_part() should be using tree sitter objects where now it appears to be using text lines.
Inspecting the first line of the example file, tree-sitter is not identifying the date on this line as a timestamp. If I move the date to its own line, inspecting the tree includes a timestamp node. Part of the problem?

Why does OrgMappings:_get_date_under_cursor() go to trouble of getting the closest heading and then parsing multiple lines of text? Wouldn't it be simpler to look for enclosing <> or [] to isolate the date at the cursor position? Maybe this strategy would also address the TODO noted above?

Why does OrgMappings:_get_date_under_cursor() go to trouble of getting the closest heading and then parsing multiple lines of text? Wouldn't it be simpler to look for enclosing <> or [] to isolate the date at the cursor position? Maybe this strategy would also address the TODO noted where it returns?

Commit 1f103a9b added an else clause to _get_date_under_cursor() that works in all cases for this particular use case. With a slight modification it seems it could also select the correct date on a line when multiple dates appear on the line using the vim.tbl_filter() addressing the TODO.
What I'm missing is why this function should be considering other lines through the use of get_closest_headline_or_nil(). Given the filter that exists to exclude dates that do not include the cursor position, the extra work to find headlines, etc. seems unnecessary.
The following is working in my test-cases, including when multiple dates appear on a single line. I don't know enough about how this function is used to understand what impact this may have on other callers. The notable area of concern being if other callers expect the date object offsets to be based on a tree-sitter object or based on the line in the buffer.
function OrgMappings:_get_date_under_cursor(col_offset)
  col_offset = col_offset or 0
  local col = vim.fn.col('.') + col_offset
  local line = vim.fn.line('.') or 0
  local dates = {}

  dates = vim.tbl_filter(function(date)
    return date.range:is_in_range(line, col)
  end, Date.parse_all_from_line(vim.fn.getline('.'), line))

  if #dates == 0 then
    return nil
  end

  return dates[1]
end

Thanks for debugging it, it was very helpful to figure out what's the issue.
I pushed a fix in d0baf31181435c2378dc2c19a57dcebcc36d9464 that fixes the date ranges in the headline, so now everything should work as expected.


[#1684] fix(web): fix special characters displays

What changes were proposed in this pull request?

Why are the changes needed?
Fix: #1684
Does this PR introduce any user-facing change?
N/A
How was this patch tested?
N/A

@ch3yne please rebase this code.

@ch3yne please rebase this code.

DONE


Data-driven barriers to adoption proposed

Addresses #13

Doesn't the report referenced primarily survey companies? That seems like it ignores most open source authors, which are likely near the top of the list of critical targets in terms of getting SBOMS "everywhere".

Doesn't the report referenced primarily survey companies? That seems like it ignores most open source authors, which are likely near the top of the list of critical targets in terms of getting SBOMS "everywhere".

I'm approving this, but we should continue this discussion point. I don't want to turn PRs into epic discussions as that tends to slow down progress. I suspect an issue is the best way to keep this going

Let's not guess. Steve Hendrick (Vice President Research at The Linux Foundation) led that report - let's ask him!!

I've emailed Steve Hendrick - let's see what he says!

The SBOM survey included data collected from individuals who overwhelmingly were from the ranks of IT, were employed, and were asked to answer questions from the perspective of how their employer (or business unit) was approaching cybersecurity.   Because we were surveying individuals it was possible that we surveyed more than one individual per company - especially because 27% of the sample came from individuals who worked for large enterprises with more than 10,000 employees. However, the larger the enterprises, the more likely it was that any one respondent would only be speaking for a business unit of the enterprise. So to answer the question, the survey largely reflected where companies were on their SBOM journey as told through the knowledge of one of more employees.


Introduce pytest to help address time issues to run journey tests

What is the purpose of this Pull Request?
The purpose of this PR is use pytest to help address the long time running some journey tests usings --durations, this way we know which test takes more time to run.
What was done to achieve this purpose?
I changed way we run tests to use pytest.
How to test if it really works?
To test it you can just run pytest --verbose --durations=10 --cov-report html tests/unit  after install pytest and pytest-cov using pip install pytest pytest-cov.
Who can help reviewing it?
@cuducos @jtemporal @anaschwendler
TODO

[x] Update the new way to run the tests on README
[x] Add a pytest.ini file

Yesterday I runned it on my machine and some tests took too long to run
==================== slowest 10 test durations =====================
4185.53s call     tests/journey/test_chamber_of_deputies_dataset.py::TestChamberOfDeputiesDataset::test_fetch_translate_clean_integration
162.20s call     tests/journey/test_federal_senate_dataset.py::TestJourneyFederalSenateDataset::test_journey_federal_senate_dataset
2.23s call     tests/journey/test_chamber_of_deputies_session_start_times_dataset.py::TestSpeechesDataset::test_fetch
1.93s call     tests/journey/test_chamber_of_deputies_official_missions_dataset.py::TestOfficialMissionsDataset::test_fetch
1.88s call     tests/journey/test_chamber_of_deputies_deputies_dataset.py::TestDeputiesDataset::test_fetch
1.66s call     tests/journey/test_chamber_of_deputies_presences_dataset.py::TestPresencesDataset::test_fetch
0.40s call     tests/journey/test_chamber_of_deputies_speeches_dataset.py::TestSpeechesDataset::test_fetch
0.00s setup    tests/journey/test_chamber_of_deputies_deputies_dataset.py::TestDeputiesDataset::test_fetch
0.00s teardown tests/journey/test_chamber_of_deputies_dataset.py::TestChamberOfDeputiesDataset::test_fetch_translate_clean_integration
0.00s teardown tests/journey/test_federal_senate_dataset.py::TestJourneyFederalSenateDataset::test_journey_federal_senate_dataset
========================= warnings summary =========================

As usual government web API are down on weekends. Gonna re-run tests later (or on Monday)…

@lipemorais Travis CI is still broken with an HTTP error. Meanwhile would you mind pondering on two possibilities:

Maybe document pytest usage in the README.md to assure a similar environment when developing locally and in the CI… what do you thibk about it?
Is the HTTP error still some external API that is broken?

Maybe document pytest usage in the README.md to assure a similar environment when developing locally and in the CI… what do you think about it?

I will do it soon. :)

Is the HTTP error still some external API that is broken?
I checked the url that Toolbox tries to fetch and got 404

Here is the url: http://www.camara.leg.br/cotas/Ano-2009.csv.zip
And a print of what I got:

@cuducos I will add t

Travis is green, yay! I think all we need now is a version bump ; )

There is a test breaking because this dataset is not available. :'(
http://www.senado.gov.br/transparencia/LAI/verba/2008.csv

What about mocking the requests and using tiny fixtures instead?

@cuducos this is what we do in unit version of this test.
https://github.com/datasciencebr/serenata-toolbox/blob/master/tests/unit/chambers_of_deputies/test_chamber_of_deputies_dataset.py#L42

Yep. An IMHO opinion depending on external services to run the suites tests is a problem per se. If I'm not wrong we adopted the journey test this way (depending on external services) as a temporary fix. As this was not a permanent solution and, given that it is broken now, it might be an interesting opportunity to sor that out.
Not sure about what others @anaschwendler @jtemporal @Irio think of that though…

Hey, @cuducos @anaschwendler . Looks that it is working now. Could we re run travis?
http://www.senado.gov.br/transparencia/LAI/verba/2008.csv

Sure thing! Just restarted it ; )

Hasn't lasted long enough:
$ curl -I  http://www.camara.leg.br/cotas/Ano-2008.csv.zip
HTTP/1.1 404 Not Found

Looks now that http://www.camara.leg.br/cotas/Ano-2008.csv.zip is out.  :'(

I just runned it a ALL tests and where all green. :)
GREEN BUILD
Could we rerun it or just merge?

Yay! May we have a version bump?

Yay! May we have a version bump?

Done in a7a2dc2a29dea1975bbe990229248c60cff8f9a1


How to enable K-Line Ranger? it works with Mockserver but not with www.devkube.com

Sorry my bad. It seems the exchanges do not have any trade activities thus I cannot pull any k-line data


Making a module,  making autodiff more efficient & time-integrating light curve.

[ ] We should set up a module for easily using a precompiled version of limb dark.
[ ] An autodiff version I wrote is extremely slow - this may be due to the fact that the transit structure needs to be created and allocated.  It would be worth looking into a more efficient way to do this.
[ ] The time-integrated light curve and derivatives need to be computed.

I'm mostly done coding the limbdark equations up in starry -- the Python/C++ version will have all these features. I'm still befuddled by most things in julia, so I'm not sure I can be of much help on that front.

@rodluger I implemented time-integration in the Julia code using [Dan's technique] (https://github.com/dfm/transit/blob/master/transit/include/integrator.h#L24-L52).
To test to see if it is working, I carried out a Taylor-series expansion and integrated, finding that the second-order the difference between integration and find:

\overline F(t_0,\Delta t) &= \frac{1}{\Delta t}\int_{t-\frac{1}{2}\Delta t}^{t+\frac{1}{2}\Delta t} F(t) dt\\ &= F(t_0) + \tfrac{1}{24} F^{\prime\prime}(t_0) \Delta t^2 + \mathcal{O}(\Delta t^4)
I've plotted the difference between the time-integrated flux minus the flux evaluated at the central point in blue and the term F''(t_0) dt^2/24 in green, and they agree rather well!

The second-order derivative is computed with finite difference at BigFloat precision.


CANNOT get profile data when creating sanpshot

Is this a BUG REPORT or FEATURE REQUEST?:

Uncomment only one, leave it on its own line:
/kind bug

What happened:
When creating snapshot, I call pb.CreateVolumeSnapshotOpts.GetProfile() to parse options
of snapshot in my storage driver. But pb.CreateVolumeSnapshotOpts.GetProfile() returns nothing (not nil, it is string but blank).
#Profile
{
	"name": "nimble_snap_create01",
	"storageType": "hpe_nimble",
	"customProperties": {
			"online": false
	}
}

# Request Body for creating snapshot
{
  "name": "test-snap02",
  "description": "this is test",
  "volumeId": "ec22d73e-eede-417f-9e20-f59990ceaa72",
  "profileId": "044111ef-5ea4-412f-ae45-52dee991f11d"
}

What you expected to happen:
Available to get profile data by using pb.CreateVolumeSnapshotOpts.GetProfile() like pb.CreateVolumeOpts.GetProfile() .
pb.CreateVolumeOpts.GetProfile() is working good.
How to reproduce it (as minimally and precisely as possible):
Using pb.CreateVolumeSnapshotOpts.GetProfile().
Anything else we need to know?:
Environment:

Hotpot(release/branch) version:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Install tools:
Others:

@fideltak Thanks for reporting this issue!  Yes, we should make a similar fix for profile in CreateVolumeSnapshotOpts like what we did for CreateVolumeOpts in this PR: https://github.com/opensds/opensds/pull/648.
The "profile" field is in CreateVolumeSnapshotOpts: https://github.com/opensds/opensds/blob/development/pkg/model/proto/model.proto#L256
Need to make a change to pass in profile for snapshot here:
https://github.com/opensds/opensds/blob/development/pkg/api/controllers/volume.go#L581,
similar to how profile is passed in for volume: https://github.com/opensds/opensds/blob/development/pkg/api/controllers/volume.go#L113
We'll fix this.

@xing-yang It seems pb.ExtendVolumeOpts.GetProfile() has same issue.

Can you try this in the CreateVolume func in your driver?
profile := model.NewProfileFromJson(opt.Profile)
log.Errorf("properties: %+v", profile.CustomProperties)

What is the output of "osdsctl profile show "?

Hi @fideltak, I think you are right, currently we only support fetching profile from CreateVolumeOpts and DeleteVolumeOpts, if you look at here, that's because we thought profile was only required when create and delete volume, but we should extend that to other methods, thanks for your question!
@xing-yang @xxwjj We should discuss about that issue : )

Hello @xing-yang  @leonwanghui . OK, I got it. Thanks.
Pls discuss about this.

@fideltak The patch has been merged, could u take a test?

@leonwanghui CreateVolumeSnapshotOpts.GetProfile() is working good. thanks.
But ExtendVolumeOpts.GetProfile() seems not be able to get customProperties section in profile...
# My profile for extend volume
    {
        "id": "450f1adb-9018-47e5-9b62-af86815a1baa",
        "createdAt": "2019-05-07T14:35:34",
        "updatedAt": "",
        "name": "nimble_create_ex02",
        "storageType": "hpe_nimble",
        "provisioningProperties": {
            "dataStorage": {
                "isSpaceEfficient": false
            },
            "ioConnectivity": {}
        },
        "replicationProperties": {
            "dataProtection": {
                "isIsolated": false
            },
            "replicaInfos": {}
        },
        "snapshotProperties": {
            "schedule": {},
            "retention": {},
            "topology": {}
        },
        "dataProtectionProperties": {
            "dataProtection": {
                "isIsolated": false
            }
        },
        "customProperties": {
            "online": true
        }
    }

# ExtendVolumeOpts.GetProfile() outputs below without customProperties.
{
   "id":"2dd8747f-b443-42bf-a9b5-4177fa63bee0",
   "createdAt":"2019-05-07T14:30:19",
   "updatedAt":"",
   "name":"default",
   "description":"default policy",
   "provisioningProperties":{
      "dataStorage":{
         "isSpaceEfficient":false
      },
      "ioConnectivity":{

      }
   },
   "replicationProperties":{
      "dataProtection":{
         "isIsolated":false
      },
      "replicaInfos":{

      }
   },
   "snapshotProperties":{
      "schedule":{

      },
      "retention":{

      },
      "topology":{

      }
   },
   "dataProtectionProperties":{
      "dataProtection":{
         "isIsolated":false
      }
   }
}

I will take a look at it, thanks!

But ExtendVolumeOpts.GetProfile() seems not be able to get customProperties section in profile...

Can you describe how do you pass the profile when you extend the volume?

Sorry I didn't make it clear enough. Now executed commands again to extend volume.
root@osds01:~/gopath/src/github.com/opensds/opensds# osdsctl profile list
+--------------------------------------+----------------------+----------------+
| Id                                   | Name                 | Description    |
+--------------------------------------+----------------------+----------------+
| ae8a155a-d297-41ca-807f-8d8f59a2e09c | nimble_create_snap01 |                |
| 9062c6f9-fbe8-40df-843a-d9c9da23c9ef | nimble_create_ex01   |                |
| 2dd8747f-b443-42bf-a9b5-4177fa63bee0 | default              | default policy |
+--------------------------------------+----------------------+----------------+

nimble_create_ex01  is profile for extending volumes.
# Profile "nimble_create_ex01"
    {
        "id": "9062c6f9-fbe8-40df-843a-d9c9da23c9ef",
        "createdAt": "2019-05-07T15:34:07",
        "updatedAt": "",
        "name": "nimble_create_ex01",
        "storageType": "hpe_nimble",
        "provisioningProperties": {
            "dataStorage": {
                "isSpaceEfficient": false
            },
            "ioConnectivity": {}
        },
        "replicationProperties": {
            "dataProtection": {
                "isIsolated": false
            },
            "replicaInfos": {}
        },
        "snapshotProperties": {
            "schedule": {},
            "retention": {},
            "topology": {}
        },
        "dataProtectionProperties": {
            "dataProtection": {
                "isIsolated": false
            }
        },
        "customProperties": {
            "online": true
        }
    }

I need to get customProperties when extending volume.
Then executing below commands to extend volume.
root@osds01:~/gopath/src/github.com/opensds/opensds# osdsctl volume list
+--------------------------------------+--------+-------------+---------+------+------------------+-----------+--------------------------------------+--------------------------------------+
| Id                                   | Name   | Description | GroupId | Size | AvailabilityZone | Status    | PoolId                               | ProfileId                            |
+--------------------------------------+--------+-------------+---------+------+------------------+-----------+--------------------------------------+--------------------------------------+
| 4532d4b8-3c9a-40b2-8b0d-c75bf6938665 | test01 |             |         | 10   | vnimble01        | available | 87f1b7da-193d-5dca-b2ca-1aa310642f1b | 2dd8747f-b443-42bf-a9b5-4177fa63bee0 |
+--------------------------------------+--------+-------------+---------+------+------------------+-----------+--------------------------------------+--------------------------------------+

root@osds01:~/gopath/src/github.com/opensds/opensds# osdsctl volume extend 4532d4b8-3c9a-40b2-8b0d-c75bf6938665 15 -p 9062c6f9-fbe8-40df-843a-d9c9da23c9ef
+------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Property         | Value                                                                                |
+------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Id               | 4532d4b8-3c9a-40b2-8b0d-c75bf6938665                                                                                |
| CreatedAt        | 2019-05-07T14:35:22                                                                                |
| UpdatedAt        | 2019-05-07T15:41:59                                                                                |
| Name             | test01                                                                                |
| Description      |                                                                                |
| GroupId          |                                                                                |
| Size             | 10                                                                                |
| AvailabilityZone | vnimble01                                                                                |
| Status           | extending                                                                                |
| PoolId           | 87f1b7da-193d-5dca-b2ca-1aa310642f1b                                                                                |
| ProfileId        | 2dd8747f-b443-42bf-a9b5-4177fa63bee0                                                                                |
| Metadata         | map[LunId:064831f4cd0455709c00000000000000000000003a PoolId:0a4831f4cd0455709c000000000000000000000001 Group:grp01 Iqn:iqn.2007-11.com.nimblestorage:4532d4b8-3c9a-40b2-8b0d-c75bf6938665-v4831f4cd0455709c.0000003a.4c648451] |
+------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

And then the output of ExtendVolumeOpts.GetProfile() is below.
It looks another profile was specified when executing command to extend volume.
---------debug----------
profileOptoins: {"id":"2dd8747f-b443-42bf-a9b5-4177fa63bee0","createdAt":"2019-05-07T14:30:19","updatedAt":"","name":"default","description":"default policy","provisioningProperties":{"dataStorage":{"isSpaceEfficient":false},"ioConnectivity":{}},"replicationProperties":{"dataProtection":{"isIsolated":false},"replicaInfos":{}},"snapshotProperties":{"schedule":{},"retention":{},"topology":{}},"dataProtectionProperties":{"dataProtection":{"isIsolated":false}}}

I did same operation to create snapshot. However it worked well.
root@osds01:~/gopath/src/github.com/opensds/opensds# osdsctl profile list
+--------------------------------------+----------------------+----------------+
| Id                                   | Name                 | Description    |
+--------------------------------------+----------------------+----------------+
| ae8a155a-d297-41ca-807f-8d8f59a2e09c | nimble_create_snap01 |                |
| 9062c6f9-fbe8-40df-843a-d9c9da23c9ef | nimble_create_ex01   |                |
| 2dd8747f-b443-42bf-a9b5-4177fa63bee0 | default              | default policy |
+--------------------------------------+----------------------+----------------+

nimble_create_snap01  is profile for extending volumes.
    {
        "id": "ae8a155a-d297-41ca-807f-8d8f59a2e09c",
        "createdAt": "2019-05-07T15:40:08",
        "updatedAt": "",
        "name": "nimble_create_snap01",
        "storageType": "hpe_nimble",
        "provisioningProperties": {
            "dataStorage": {
                "isSpaceEfficient": false
            },
            "ioConnectivity": {}
        },
        "replicationProperties": {
            "dataProtection": {
                "isIsolated": false
            },
            "replicaInfos": {}
        },
        "snapshotProperties": {
            "schedule": {},
            "retention": {},
            "topology": {}
        },
        "dataProtectionProperties": {
            "dataProtection": {
                "isIsolated": false
            }
        },
        "customProperties": {
            "online": true
        }
    }

Executed command to create snaphost...
root@osds01:~/gopath/src/github.com/opensds/opensds# osdsctl volume list
+--------------------------------------+--------+-------------+---------+------+------------------+-----------+--------------------------------------+--------------------------------------+
| Id                                   | Name   | Description | GroupId | Size | AvailabilityZone | Status    | PoolId                               | ProfileId                            |
+--------------------------------------+--------+-------------+---------+------+------------------+-----------+--------------------------------------+--------------------------------------+
| 4532d4b8-3c9a-40b2-8b0d-c75bf6938665 | test01 |             |         | 10   | vnimble01        | available | 87f1b7da-193d-5dca-b2ca-1aa310642f1b | 2dd8747f-b443-42bf-a9b5-4177fa63bee0 |
+--------------------------------------+--------+-------------+---------+------+------------------+-----------+--------------------------------------+--------------------------------------+
root@osds01:~/gopath/src/github.com/opensds/opensds# osdsctl volume snapshot create 4532d4b8-3c9a-40b2-8b0d-c75bf6938665 -n sanp01 -p ae8a155a-d297-41ca-807f-8d8f59a2e09c
+-------------+--------------------------------------+
| Property    | Value                                |
+-------------+--------------------------------------+
| Id          | 8c95f12f-b1f4-455f-b49f-b00d71141ffb |
| CreatedAt   | 2019-05-07T15:41:04                  |
| UpdatedAt   |                                      |
| Name        | sanp01                               |
| Description |                                      |
| Size        | 0                                    |
| Status      | creating                             |
| VolumeId    | 4532d4b8-3c9a-40b2-8b0d-c75bf6938665 |
+-------------+--------------------------------------+

I could get values at customProperties in profile.

I think I got your point, the main reason is when you send a extend volume request, there would be no place for ExtendVolumeSpec to locate ProfielId, and opensds apiserver will check the database and fetch the profileId from VolumeSpec, the source code is implemented here.

That would mean currently Extend volume doesn't support pass other parameters than volumeId and newSize.

@leonwanghui Understood. I will remove the functions to parse options in profile at extending volume section.
I think I can close this case if you don't think about the enhancement of passing values in profile for extending volume.
Can I?

Sure, please go ahead.

@leonwanghui thanks a lot everytime!


Basic documentation of cache plugin methods option

any other input or can we merge like this? should we maybe add some "since" notes?


PERL-972: Amended transaction examples to utilise session in the operations

Coverage remained the same at 74.659% when pulling 570c3dac3fd31904141cf16b416fb63fe9993bd3 on sindbach:PERL-908 into 5318ef17bd0ae2658c9b5311f9a807f83716a7bc on mongodb:master.

Amended with ticket number and merged.  Thanks!


auth: use bytes comparasion

In the auth pkg, we use string comparison now. this is inconsistent with how the range ordering works in mvcc store. We should use bytes instead and keep []byte all over the place instead of converting them to string.
/cc @gyuho can you please fix this?

Sure. Will fix today.


[Feature] Register Support

Does this support the user register and auto creating a panel?

yes, it will be ready in the next version, with the support of social media.

ok when will next version be released?

very soon.

will you release before the end of september?

I think so it's ready just need some tests

Is this feature already working? I placed the routes in the routes/web.php file:
Route::domain(config('filament-tenancy.central_domain'))->middleware(['web'])->group(function () {
    if(config('filament-tenancy.features.homepage')){
        Route::get('/', \TomatoPHP\FilamentTenancy\Livewire\RegisterDemo::class)->name('tenancy.home');
    }

    if(config('filament-tenancy.features.auth')){
        Route::get('/tenancy/verify-otp', \TomatoPHP\FilamentTenancy\Livewire\RegisterOtp::class)->name('tenancy.verify.otp');

        Route::middleware(['web', 'throttle:10'])->group(function (){
            Route::get('/tenancy/login/{provider}', [\TomatoPHP\FilamentTenancy\Http\Controllers\AuthController::class, 'provider'])->name('tenancy.login.provider');
            Route::get('/tenancy/login/{provider}/callback', [\TomatoPHP\FilamentTenancy\Http\Controllers\AuthController::class, 'callback'])->name('tenancy.login.provider.callback');
        });
    }
});

After clicking the "Start" and "Demo login" buttons, this error appears:


az capi create should be able to wait for all nodes to be Ready

Currently az capi create seems to return as soon as the control plane is available and some kubectl commands return. There is likely to be ongoing provisioning of resources, so arguably the cluster isn't really ready at this point.
We could add an optional flag like --wait-for-nodes which would add the --control-plane-machine-count to the --node-machine-count values and then loop until that many nodes are Ready before returning from az capi create.
If a value is specified such as --wait-for-nodes=4, we use that value instead of adding the other two. This is to handle cases where the simple addition logic fails, such as multiple node pools all respecting --node-machine-count or a hard-coded user template that ignores it.

/assign


[SPARK-36129][BUILD] Upgrade commons-compress to 1.21 to deal with CVEs

What changes were proposed in this pull request?

This PR upgrades commons-compress from 1.20 to 1.21 to deal with CVEs.
Why are the changes needed?

Some CVEs which affect commons-compress 1.20 are reported and fixed in 1.21.
https://commons.apache.org/proper/commons-compress/security-reports.html

CVE-2021-35515
CVE-2021-35516
CVE-2021-35517
CVE-2021-36090

The severities are reported as low for all the CVEs but it would be better to deal with them just in case.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

CI.

Test build #140993 has started for PR 33333 at commit ad3da13.

Kubernetes integration test unable to build dist.
exiting with code: 1
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/45507/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/45507/

@gengliangwang I landed this to branch-3.2 since this is related to some CVEs.

BTW, for the other old branches, we might need to revisit.

Yeah, I'll do it.

Test build #140993 has finished for PR 33333 at commit ad3da13.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/140993/

Thank you @sarutak @dongjoon-hyun


Disable inress (v1 apis) in default Helm install

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

Needs approval from an approver in each of these files:

install/OWNERS [sdake]

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


serializeAs: null not auto-detected

Yeah...I can't take care of all AdonisJS model/serialize features.. just use the .without(url) notation.


login to /lucee/admin/server.cfm - does not work

I successfully executed the scripts to install Lucee... added my ip to lucee.conf but above path added to my ip address does not work (http://myipaddress/lucee/admin/server.cfm).  Additionally, http://myip:8888 will not work. But http://myipaddress:8080 show a successful Tomcat8 installation.  It looks like I have an "almost" successful installation.  How can I proceed?  thanks

@wgregori does your /etc/tomcat8/web.xml file look like this: https://github.com/foundeo/ubuntu-nginx-lucee/blob/master/etc/tomcat8/web.xml

I am having this same issue.  I installed using your script, made it use the latest version of Lucee (<IP_ADDRESS>) and mae sure my tomcat8/web.xml script matches exactly what is above.  Nginx is running just fine.  Just can't get the /lucee/admin/server.cfm to work - it returns a 404.

@johnjarrard did you edit the /etc/nginx/lucee.conf file to allow your IP address? See https://github.com/foundeo/ubuntu-nginx-lucee/blob/master/etc/nginx/lucee.conf#L5

Yes, I did.  I blew away the VM and tried again and it worked.

Ok thanks, closing this issue.


Roll Flutter Engine from e80266b78e74 to 620431def838 (11 revisions)

https://github.com/flutter/engine/compare/e80266b78e74...620431def838
2023-03-15<EMAIL_ADDRESS>[Impeller] Simplify subpass branches; remove unused effect_matrix param (flutter/engine#40292)
2023-03-15<EMAIL_ADDRESS>Improve Linux texture examples. (flutter/engine#40289)
2023-03-15<EMAIL_ADDRESS>Roll Skia from 35dc16845fbe to b0351e00199e (16 revisions) (flutter/engine#40291)
2023-03-15<EMAIL_ADDRESS>[Impeller] Make matrix image filter in saving layer work as expected (flutter/engine#40171)
2023-03-14<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from LEydKfJiGWKUm-o1q... to BRE9jdqYpdkbU0j7H... (flutter/engine#40286)
2023-03-14<EMAIL_ADDRESS>[Impeller] Correct the results of 'GetRight()' and 'GetBottom()' for maximum rect (flutter/engine#40271)
2023-03-14<EMAIL_ADDRESS>Revert "Reland "Sequester all Skia<->DL interactions into the skia sub-module" (#40243)" (flutter/engine#40283)
2023-03-14<EMAIL_ADDRESS>Added wide-gamut color support for ui.Image.toByteData and ui.Image.colorSpace (flutter/engine#40031)
2023-03-14<EMAIL_ADDRESS>Fix forward declares and includes of some Skia Ganesh types (flutter/engine#40279)
2023-03-14<EMAIL_ADDRESS>Preserve order when regenerating GPU images (flutter/engine#40268)
2023-03-14<EMAIL_ADDRESS>Reland "Sequester all Skia<->DL interactions into the skia sub-module" (flutter/engine#40243)
Also rolling transitive DEPS:
fuchsia/sdk/core/linux-amd64 from LEydKfJiGWKU to BRE9jdqYpdkb
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC aaclarke@google.com,rmistry<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


[WFLY-13723] Many Jakarta EE 8 TCK tests are failing due to "Unknown service name jboss.ejb"

This PR does the following:

fixes a single capability reference in the EJB3 subsystem remote resource which should have used the dynamic form of addCapabilityRequirement() but mistakenly used the static form, which resulted in a service not being found

For more details: see https://issues.redhat.com/browse/WFLY-13723

I'm going to take a chance and merge this before CI completes, in hopes it will get into tonight's TCK run.

Thanks, @rachmatowicz

I started a TCK run with the rachmatowicz:WFLY-13723 pr last night and it passed!  Thanks @rachmatowicz + Thanks @chengfang + Thanks @bstansberry!


Moved imports from inside functions to the top of the files

@anenadic could you approve this once https://github.com/carpentries-incubator/python-intermediate-development/issues/266 is resolved in the course content repo. There should be a PR coming through for it shortly.


Read until all data is consumed when EOF is detected even if readPend…

…ing is false and auto-read is disabled.
Motivation:
We should better always notify the user of EOF even if the user did not request any data as otherwise we may never be notified when the remote peer closes the connection. This should be ok as the amount of extra data we may read and so fire through the pipeline is limited by SO_RECVBUF.
Modifications:
Always drain the socket when EOF is detected.
Result:
No risk for the user to be not notified of EOF.

We could also allow this to be configured by an ChannelOption. That said I am not sure we need. WDYT ?

Thanks for taking care @normanmaurer !

@Scottmitch sorry it took so long :(


[study population - students - courses] sorting by a column does not work

now sorting does something but does not order students so that all who passed a course would be first

It does work


default calendar repeating event processing (again)

I'm having a problem with specific repeating events from google processing again. If the event is repeating, and then a later repeated event is deleted, the system will still show that deleted event.
How is repeating events handled? Does the ICS file even contain the repeats, or is it reliant on the inital rules? If the repeats are in the ICS as individual events, do we need to even process the repeat rules?

yes  the deleted are called excluded events. there was a fix put in for next release for excluded
they will show in the ics

Good deal, I guess it's solved then.


Cookies are not set

Environment

Operating System: Linux
Node Version:     v19.7.0
Nuxt Version:     3.2.3
Nitro Version:    2.2.3
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      ssr, css, modules
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction
<script setup>
definePageMeta({layout: "guest",});
const any = await useFetch('http://localhost:8080/test') // response with cookies, but cookie tab in devtools is empty
</script>

Describe the bug
cookies dont set
Additional context
ssr:false
inside devTools in the response section I see that the cookie headers are there, but they are not set, why?
Logs
No response

Would you provide a reproduction? 🙏

Would you provide a reproduction? pray

Sorry, bot no, because local dev


chore: Add initial infrastructure for ssh tests

Pull Request description

How to test these changes

...

Pull Request checklists
This PR is a:

[ ] bug-fix
[ ] new feature
[ ] maintenance

About this PR:

[ ] it includes tests.
[ ] the tests are executed on CI.
[ ] the tests generate log file(s) (path).
[ ] pre-commit hooks were executed locally.
[ ] this PR requires a project documentation update.

Author's checklist:

[ ] I have reviewed the changes and it contains no misspelling.
[ ] The code is well commented, especially in the parts that contain more
complexity.
[ ] New and old tests passed locally.

Additional information

Reviewer's checklist
Copy and paste this template for your review's note:
## Reviewer's Checklist

- [ ] I managed to reproduce the problem locally from the `main` branch
- [ ] I managed to test the new changes locally
- [ ] I confirm that the issues mentioned were fixed/resolved .

@abhijeetSaroha , please take a look into this PR please.
the info for the connection to the container is:

username: testuser
password: testpassword
host: localhost
port: 2222


Add tests for sl-grid-table-cell-row-expander component

Closed by https://github.com/softlayer/sl-ember-components/pull/344


x/tools/gopls: use common package name aliases in unimported completion and goimports

What version of Go, VS Code & VS Code Go extension are you using?
Version Information
go version go1.21.0 windows/amd64
golang.org/x/tools/gopls v0.13.2
vscode version 1.81.1 x64
vscode go extension version 0.39.1
Checking configured tools....
GOBIN: undefined
toolsGopath:
gopath: C:\Users\jhendrix\go
GOROOT: C:\Program Files\Go
PATH: C:\Program Files\PowerShell\7;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files\dotnet;C:\Program Files\nodejs;C:\Program Files\PowerShell\7;C:\Program Files\Git\cmd;C:\Program Files\Docker\Docker\resources\bin;C:\Program Files\Go\bin;C:\Users\jhendrix\AppData\Local\Microsoft\WindowsApps;C:\Users\jhendrix\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\jhendrix\go\bin;C:\Users\jhendrix\AppData\Local\Programs\Fiddler;C:\Program Files\Graphviz\bin;C:\Users\jhendrix.dotnet\tools;C:\Users\jhendrix\AppData\Roaming\npm;C:\Users\jhendrix\go\bin
go:	C:\Program Files\Go\bin\go.exe: go version go1.21.0 windows/amd64

gotests:	C:\Users\jhendrix\go\bin\gotests.exe	(version: v1.6.0 built with go: go1.21.0)
gomodifytags:	C:\Users\jhendrix\go\bin\gomodifytags.exe	(version: v1.16.0 built with go: go1.21.0)
impl:	C:\Users\jhendrix\go\bin\impl.exe	(version: v1.1.0 built with go: go1.21.0)
goplay:	C:\Users\jhendrix\go\bin\goplay.exe	(version: v1.0.0 built with go: go1.21.0)
dlv:	C:\Users\jhendrix\go\bin\dlv.exe	(version: v1.21.0 built with go: go1.21.0)
staticcheck:	C:\Users\jhendrix\go\bin\staticcheck.exe	(version: v0.4.3 built with go: go1.21.0)
gopls:	C:\Users\jhendrix\go\bin\gopls.exe	(version: v0.13.2 built with go: go1.21.0)

go env
Workspace Folder (autocompleterepro): c:\git\jhendrixMSFT\autocompleterepro
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\jhendrix\AppData\Local\go-build
set GOENV=C:\Users\jhendrix\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\jhendrix\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\jhendrix\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=C:\Users\jhendrix\go\tmp
set GOTOOLCHAIN=auto
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.21.0
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=0
set GOMOD=c:\git\jhendrixMSFT\autocompleterepro\go.mod
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=C:\Users\jhendrix\go\tmp\go-build1620475247=/tmp/go-build -gno-record-gcc-switches

using default Go setting, nothing added/edited
Describe the bug
Using autocomplete to create a stub definition of a func within a struct, the aliased package names for the dependent types aren't preserved.  Instead, the non-aliased package names are used.
Steps to reproduce the behavior:
Clone https://github.com/jhendrixMSFT/autocompleterepro
On line 12, note that the package names for resp and errResp are incorrect.  They should be azfake but are fake.
To repro, just delete line 12 then recreate it, using the autocomplete prompt to create the stub definition for Get.

Milestoning this for<EMAIL_ADDRESS>because I think the situation with aliases may be improved in go/types as part of Go 1.22. We'll no more by<EMAIL_ADDRESS>

This should be fixed in Go 1.23, when go/types produces Alias information by default. In the meantime, we should verify the fix in a future version of gopls (v0.16.0 or v0.17.).

Duh, this has nothing to do with go/types.Alias: it's talking about package names.
In other words, the request is for gopls to recognize that azfake is the de-facto alias for fake, by considering peer importers or importers in the azure module itself. That is a much more complicted problem.

I do agree that this would be a useful feature. Moving to the backlog.


Raise KeyError when the dependency is not found in the container

Previously the provide method returned None if the dependency was not found. This could
potentially delay code errors in case one made a typo in the dependency path.
Now when the KeyError is raised, application will fail instantly.

Thanks for your PR, very appriciated!
Closes #1


{Bp-13716} change nxsched_islocked_global to nxsched_islocked_tcb

Summary
1 To improve efficiency, we mimic Linux's behavior where preemption disabling is
only applicable to the current CPU and does not affect other CPUs.
2 In the future, we will implement "spinlock+sched_lock", and use it extensively.
Under such circumstances, if preemption is still globally disabled, it will seriously impact
the scheduling efficiency.
3 We have removed g_cpu_lockset and used irqcount in order to eliminate the dependency of
schedlock on critical sections in the future, simplify the logic, and further enhance the
performance of sched_lock.
4 We set lockcount to 1 in order to lock scheduling on all CPUs during startup, without
the need to provide additional functions to disable scheduling on other CPUs.
5 Cpu (1-n) must wait for cpu0 to enter the idle state before enabling scheduling because
it prevents CPUs1~n from competing with cpu0 for the memory manager mutex, which could
cause the cpu0 idle task to enter a wait state and trigger an assert.
size nuttx
before:
text    data     bss     dec     hex filename
265396   51057   63646  380099   5ccc3 nuttx
after:
text    data     bss     dec     hex filename
265184   51057   63642  379883   5cbeb nuttx
size -216
Impact
RELEASE
Testing
CI

[Experimental Bot, please feedback here]
NuttX PR Requirements Review
This PR appears incomplete based on the provided information.  Here's a breakdown:
Strengths:

Summary: Provides a good overview of the changes and their motivations.
Impact: Clearly identifies the release type.

Areas for Improvement:

Impact:

Impact on user: Needs more detail. Will any APIs change?  How will users adapt?
Impact on build: "NO" seems unlikely given the changes to core scheduling. Please clarify the build impact.
Impact on hardware: Specify affected architectures and boards.
Impact on documentation: Needs explicit confirmation if documentation updates are required/provided.
Impact on security: Needs justification for "NO". Scheduling changes often have security implications.
Impact on compatibility: Needs justification for "NO".  Changes to core scheduling mechanisms often impact compatibility.

Testing:

Insufficient Detail: "CI" is not descriptive enough.  List specific CI environments used (architectures, boards, configurations).
No Logs:  Provide actual testing logs before and after the change to demonstrate the intended behavior and improvements.

Recommendations:

Expand on Impact:  Provide specific details for each impact category, especially user impact, build impact, and compatibility.
Provide Detailed Testing Information:

List specific CI environments used.
Include actual testing logs demonstrating the changes' effects.

Justify Security and Compatibility Impact: Explain why these are not impacted or provide details if they are.

By addressing these points, the PR will be better aligned with NuttX's requirements and easier for reviewers to evaluate.

@lupyuen  please merge the PR


Ban profile: ban is removed upon first cron maintenance run

This is because ban time period is always 0, allow admin to specify ban period.
At least add a setting - "Ban time duration"

Related commit 25d919f


JSON 5.0 - Why is problemTypes so different in format from Impacts

See https://github.com/Vulnogram/Vulnogram/issues/63
JSON format of CWE (problemtypes) is
      "problemTypes": [
        {
          "descriptions": [
            {
              "lang": "en",
              "cweId": "CWE-129",
              "description": "CWE-129 Improper Validation of Array Index",
              "type": "CWE"
            }
          ]
        },
        {
          "descriptions": [
            {
              "lang": "en",
              "cweId": "CWE-77",
              "description": "CWE-77 Improper Neutralization of Special Elements used in a Command ('Command Injection')",
              "type": "CWE"
            }
          ]
        }
      ],

But capec is:
      "impacts": [
        {
          "capecId": "CAPEC-102",
          "descriptions": [
            {
              "lang": "en",
              "value": "CAPEC-102 Session Sidejacking"
            }
          ]
        },
        {
          "capecId": "CAPEC-107",
          "descriptions": [
            {
              "lang": "en",
              "value": "CAPEC-107 Cross Site Tracing"
            }
          ]
        }
      ],

Since cweId and type are not language specific, shouldn't they be outside the descriptions array and formatted just like impacts?

@chandanbn Would you please clarify the relationship between the v4 and v5 fields? Thanks!

Agree the cweId field can be pulled up and the data structures can be made similar, but now too late to change. I don't see this as a stopper for services/5.0 deployment.
A change would be backwards incompatible, so this needs to be addressed in 6.0.


Use Resource Transformers/Resolvers

Use Resource Transformers and Resolvers to burst static resources from browsers/CloudFlare cache

This feature is now better supported in Boot 1.3 - see spring-projects/spring-boot#1604


Can we develop app to connect other WebRTC WEB apps through this SDK?

Hello,
Can I develop an app which connects to other WebRTC WEB apps with this SDK?
Thank you,
Best Regards

Yes, it can communicate with the ion-app-web.


fix: Set the cache to the /tmp directory

When ko publishes the docker image, it uses this base image which runs as the nonroot user. Therefore you don't have the expected permissions of a root user.
You can write to the /tmp directory as nonroot but so the default cache folder needs to be changed.
Adding support for passing in the cache folder via a command line argument is scoped into an upcoming change.

Closing this to reopen in a branch name without the # character.


write iniparser wrapper

We need to make an parser wrapper.
from the ini parser:

it does not guarantee given value for the key is able to parse or not.
some of the parse logic has undefined behavior. (like using atof in iniparser_getdouble)

:octocat: cibot: Thank you for posting issue #395. The person in charge will reply soon.

Handled with #404 now with different strategy


Copycat on Google Play

Hi @helloworld1
I found this app on the Google Play Store. This guy just took your source code, added some ads in it and put it on the Store, without warning this is free software...
As you are the owner of the source code, feel free to open a request to google here to remove this copy from the Store, if it's your wish ;)
Don't forget to tell Google that:

The app is licensed under Apache v2 license and this guy is violating it;
He is falsely claiming he made the app;
Provide some screenshots of your own app.

Thanks a lot for flagging this app. I have opened a request to Google to remove the app. Waiting for response now.

Thanks 👍
Do not hesitate to copy past the links of new copycats in the future so I can track them :)


Update loops-in-progress.md

Added my name

We need to update the first-PR docs to get people to update their own forks before making edits, to minimize merge conflicts like this.


Add "new file" customization

Description of the new feature / enhancement
Adding a "new file" in right-click dialog in Windows Explorer is troublesome as it requires you to deal with registry keys.
A nice UI would be welcome.

Scenario when this would be used?
When user wants to have a quick access to a new file from a freshly installed program that does not add it to Windows Explorer (e.g., Markdown, ...).
Supporting information
No response

Yes, simply adding a file in "C:\Windows\ShellNew" doesn't do it.


[JENKINS-45142] Retry connections after getting SocketTimeoutException

JENKINS-45142
@reviewbybees

BTW I get a ton of failures/errors running tests in this component, which I doubt are caused by my changes here.

This pull request originates from a CloudBees employee. At CloudBees, we require that all pull requests be reviewed by other CloudBees employees before we seek to have the change accepted. If you want to learn more about our process please see this explanation.

[ ] @stephenc

In my github plugins i just do retryable executions from Function and that's all.

@reviewbybees done

do retryable executions from Function

Yes it is possible to work around from the caller side, but to limit the fix to the known case where a retry is definitely sensible, it would be necessary to inspect causes for instanceof SocketTimeoutException.


#trolug was one of the first channels moving to libera

please add trolug to the list
see in section IRC
http://trolug.de/hilfe.html

TroLUG is already in the list :-)


Add in pre-processing steps from Matlab

[ ] Make sure rx- and ddm- variables are the same shape
[x] Average out spontaneous zero values

- [ ] Make sure rx- and ddm- variables are the same shape
This issue is best resolved at the L0 stage


Train custom dataset

How do I train this model on a custom dataset? What are the steps I need to follow?

Same issue I posted has been closed.
check here:
https://github.com/facebookresearch/c3dpo_nrsfm/issues/3

Many thanks for posting the link to the closed issue -> closing this issue as well.


Extract python driver

Description
This PR extends and adjusting the modified python driver for RebirthDB. Due to the driver's files are outdated and I created a "proper" (or at least) package for the driver.
What I've done:

Extended the .gitignore file to exclude python related files
Created a new Makefile to easily manage the package's build and upload
Created .travis.yml for CI integration
License added to the root folder and for the touched files
Created requirements.txt for easier dependency install
Added a dummy test to be able to run on travis
Set up tox configuration

NOTE
Version of the package is already bumped. The reason is that it is not bumped since 2016.
### TODO
In the future we will need to

[ ] Rename rethinkdb package name to rebirthdb while keeping the git history
[ ] Move the python driver related tests from the original repo
[ ] Upload new package to PyPi

@grandquista There is a plan to rename the package (and every reference for the package name) but for the first run I would not like to introduce this kind of change. I would like to open a separate PR for the renaming to clearly see what changed.
By the way I'll need to fix lot of formatting issues in this PR so I'll need a new approve later today.

Looks like tox doesn't have support for Python3.3 anymore tox-dev/tox/issues/168. I'm good with disabling that one as well. Python3.3 also blocks support for Python3.7 due to async keyword.

@grandquista Due to Python 3.3 is end of life since 2017 I remove it.


Fixed bug with texrepeat and matrices

fixed:
-when texrepeat is enabled, the blur bleeds over the side of the surface
-when matrix_world is set, the blur may draw in the wrong place on the surface

Thank you for your contribution!


Configure send message placeholder text

Currently, the placeholder text in the typing view cannot be edited.
It always displays "Write a message".
It should be possible to configure this value from ALAppLozicSettings.

@danielchristopher1 we will include these settings in our next release. Thanks for raising pull request.


feat: bump nri-docker version to v1.4.2

This PR bumps to the v1.4.2 nri-docker version just released with the GHA pipelines. These release includes arm binaries.

Just a reminder that in order to effectively merge this, we need to remove the "if" in the multiarch pipeline which excludes the download of docker on arm.

Already updates in the ci/pipeline branch #331


[APPM-86] Clicking on the trash icon of a en entitlement (access) policy in 'Web Application Resources' doesn't prompt the user for a confirmation in create and edit app screens.

Reference: https://wso2.org/jira/browse/APPM-86

Not related to IoT server, hence closing the issue.