Support for managed identity in azure.storage.fileshare

Running the following:
from azure.storage.fileshare import ShareFileClient
from azure.identity import DefaultAzureCredential

file_client = ShareFileClient(
                        account_url=f"https://{storage_account}.file.core.windows.net/",
                        file_path=file_path,
                        credential=DefaultAzureCredential(),
                        share_name=share_name
                     )

Leads to the following error:
ValueError("Token credentials not supported by the File service.")

Default credentials in my case would be managed identity. It's not explicitly mentioned in the documentation (as far as I can see), but is managed identity not supported by this library? Will it be supported, and if so, when?

Hi @holwech
Thanks for reporting this. We will discuss this and get back to you!

what is the status of this issue?

The service does not have the support for this yet. We will add it to the SDK as soon as the service adds support. We do not have the ETA for the service support

Hi,
Is there an update on this? For example, documentation suggests that this approach should work e.g.

from azure.storage.fileshare import ShareServiceClient

service = ShareServiceClient(account_url="https://<my-storage-account-name>.file.core.windows.net/", credential=credential)

However, using azure-storage-file-share 12.5.0 with a service principal token i'm getting the same error.
ValueError("Token credentials not supported by the File service.")

Thanks!

Any update on this? what is the best approach to connecting to file service through python SDK?

Hi all, apologies for the long delay with no update but we've essentially been waiting for the service to add support for AAD auth to the Files service. I'm happy to report the service team is finally working on adding this support and we should soon be able to support this in the SDK. I don't have yet have a concrete timeline but hopefully it will be coming within the next couple of releases.
Thanks for your patience. I will update here once the feature has been added.

Hi all, apologies for the long delay with no update but we've essentially been waiting for the service to add support for AAD auth to the Files service. I'm happy to report the service team is finally working on adding this support and we should soon be able to support this in the SDK. I don't have yet have a concrete timeline but hopefully it will be coming within the next couple of releases.
Thanks for your patience. I will update here once the feature has been added.

is this going to be in .net SDK as well?

@david-msft, yes, the plan is for the to be added to the .NET SDK as well once its available from the service. Still no ETA on it but this feature in.NET should be released at the same as Python.

what @diti-nz said...?

Hi all, I'm happy to announce that support for Files OAuth / Managed identities has been released in our latest preview release, 12.12.0b1! Please see this sample for example use.
Please note there some caveats with the implementation that are specific to the Files SDK and come from the service (out of the client's control).

Only File, Directory, and a small handful of Share level operations are supported for use with OAuth in the data plane SDK (azure-storage-file-share). For all other operations that need to be used with OAuth, it is recommended to use the control plane SDKs.
In the current implementation you must provide the token_intent keyword (see sample) with the only possible value being backup today. This certifies your intent to use the readFileBackupSemantics and/or writeFileBackupSemantics RBAC permissions that allow you to bypass File ACLs when using OAuth. This is currently the only supported scenario for OAuth in the Files service.

Please feel free to try out the preview release and provide any feedback. This will tentatively be released in our next full release within the next few weeks (may change though). Since it is currently in preview, it is subject to change before the full release though. Thanks for your patience!

This has been fully released in version 12.12.0.


fzf-lua files leaves dangling neovim /tmp directories when executed in a git repository

Steps to reproduce:

$ mkdir -p fzf-lua-repro/.config/nvim
$ cd fzf-lua-repro
$ curl https://raw.githubusercontent.com/ibhagwan/fzf-lua/main/minimal_init.lua > .config/nvim/init.lua
$ git init
$ env HOME=$(pwd) nvim
:FzfLua files
<ESC>
:quit
Observe dangling /tmp/nvim*/0 socket and directory.

Neovim version: c5ac04331
Nixos version: 22.05.20220127.d01b2cc (Quokka)
Git version: git version 2.34.1
Fzf version: 0.29.0 (0.29.0)

That’s because of how tempname works, as you can see below I’m deleting the temp file at the end but the directory is probably going to stay dangling, not sure how to address this as the directory might contain other temp files unrelated to fzf-lua:
https://github.com/ibhagwan/fzf-lua/blob/0f4ca97bb7063c73897b8c55204456bb88cddc3b/lua/fzf-lua/fzf.lua#L24-L37
In any event, directory pollution inside /tmp shouldn’t be a big deal, they don’t take space and get cleared on boot.

Found the issue, when multiprocess=true (the default), the command runs inside a wrapped neovim "headless" instance, when the command ends the code issues os.exit with the external program exit code, turns out neovim will not delete the temporary directory this way.
Solved in https://github.com/ibhagwan/fzf-lua/commit/4040e33683041c942f92a395fe5147ac704d4588
Ty for the report!


Output text of wsl.exe before enabling WSL2 are garbled when Windows display language is not English.

Environment
Microsoft Windows [Version 10.0.20150.1000]
WSL2

Steps to reproduce
Setting app -> Time & Language -> Language -> Set "Windows display language".
Launch wsl.exe.
Translated text is displayed correctly after enabling WSL and rebooting.

Expected behavior

Actual behavior
C:\Windows\system32>wsl --help

Copyright (c) Microsoft Corporation. All rights reserved.

????: wsl.exe [Argument]

??:

    --install
        Linux ? Windows ??????????????????????
        ??????????????????? ???????????????????

    --help
        ??????????????

C:\Windows\system32>wsl --install
Installing Virtual Machine Platform
Virtual Machine Platform is now installed.
Installing Windows Subsystem for Linux
Windows Subsystem for Linux is now installed.
???????????????????????????????????????????????

C:\Windows\system32>wsl --install
??????????????????????????

C:\Windows\system32>

Maybe variation your #5388 (and one other I can't find atm). I was meaning to ask over in the other one: is it any better in windows terminal.

There was no improvement using Windows Terminal.

I'll sort this out, thanks for reporting.

I hit this too, it's replated to codepage. You may run chcp in cmd.exe to see what's the active code page, and the codepage is not the localized one.
There are two ways to fix it:

use Windows Terminal. Windows Terminal fixed this problem.
There is  'Change system locale' in Region setting, change it and make it matches with Windows display language

The traditional windows console host is very susceptible to changes in codepage and font. It doesn’t do font fallback, so it will replace glyphs that do not exist in the current font with the [?] symbol.

Maybe variation your #5388 (and one other I can't find atm). I was meaning to ask over in the other one: is it any better in windows terminal.

They are different problems. 5388 is WSL code problem, and you can't workaround it without code change. And this issue is not a bug and you should be able to fix it by settings.

Windows Terminal does not solves this problem.

Of course, if I have a fresh install of Windows, Windows display language and system locale match.

Thanks, I can repro your problem.
It only happens before enabling WSL. After you enabled WSL, it will display message correctly.

I’ll find some time to fix this today.

Fixed.
https://docs.microsoft.com/en-us/windows/wsl/release-notes#build-20175

/fixed 20175

Before wsl --install

after wsl --install

WSL store looks like french or something

why the hell do i get french language ???


There are several unused dependency packages (UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.Testing.Activities, UiPath.UIAutomation.Activities). Getting rid of these will make your program run faster.
You also forgot to include an Automation Hub URL for your project. You can set this up in Project Settings.
Execution: 1
Your code doesn't execute as expected, with many places for improvement.
"Log Message" isn't used in your workflow. This helps you trace where the problem is during development and even after release.
Your sequence for concatenating two variables is unnecessary. Removing it makes your workflow cleaner.
Annotations and Comments: 0
There are several activities with default or repeated names. It'll be easier to understand the purpose of the activities if you give them descriptive, unique titles.
Your code's structure will improve, and it'll be simpler to collaborate and maintain the code.
Remember, comrades, clear and poignant communication often makes the difference between standing strong and crumbling in the face of adversity. Keep your code clean, orderly and well-documented.

SourceCode/2023/Oct2023/Basics/Suvedharan/Task24/project.json
GitHub Comment for PR:
File: NoFile

Looks like the project doesn't have an Automation Hub URL defined. You can fix it by going to Project Settings and adding the necessary details.

There are several dependency packages that are not in use like UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.System.Activities, UiPath.Testing.Activities, UiPath.UIAutomation.Activities. It's better to remove them as they'll make the process execution faster.

File: Main.xaml

No Log Message is found in the Main.xaml workflow. They're really important as they help in understanding the path of the flow that's quite useful for both maintenance and pinpointing errors.

Noticed usage of WriteLine activity at Displaying the stored value and Output of the replaced value. Ideally, during debugging, they should be swapped with tracepoints and removed before publishing. If it's crucial for debugging, you should opt for Log Message instead of WriteLine.

Overall Scores:

Code Completion - 1/2 (Need to resolve unused package dependencies)
Execution - 2/2
Annotations and Comments -

SourceCode/2023/Oct2023/Basics/Suvedharan/Task26/project.json
NoFile

Automation Hub URL: Your project doesn't have a declared Automation Hub URL. Set it in the "Project Settings".
Unused Packages: I see UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.Testing.Activities, and UiPath.UIAutomation.Activities packages are added but not utilized. Remove them to quicken your process execution time.

Main.xaml

Log Message: Your workflow lacks a Log Message activity. These activities help track the development journey and debug the workflow if needed. Consider using it.
Repeated Activity Name: Message box activity names are repeated 6 times. Activity names should reflect their operation. Avoid repeated and generic names.
Default Name for Activities: Several activities such as Assign, Message Box, Input Dialog still have default names. Changing it to a more descriptive one will improve code readability.

In terms of criteria scoring based on the review:

Code completion: 2 (Done, but areas need improvement)
Execution: 2 (Can't validate execution without running, but no blocking issues seen in the XAML code)
Annotations and comments: 0.6 (Needs much more commenting and renaming of activities)

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_18/project.json
{
"NoFile": [
{
"message":"Your project is missing the required Automation Hub URL. In the Project Settings, add this information."
},
{
"message":"You've included the UiPath.Mail.Activities package, but it's not being used. Remove it to speed up process execution."
},
{
"message":"You've included the UiPath.Testing.Activities package, but it's not being used. Remove it to speed up process execution."
},
{
"message":"You've included the UiPath.UIAutomation.Activities package, but it's not being used. Remove it to speed up process execution."
}
],
"Main.xaml":[
{
"message":"I see no Log Message used in your Main workflow. It's a good practice to use Log Message activities while developing. They help you track the flow and diagnose issues when errors occur."
},
{
"message":"I see a variable, DtOutputtable, without a DataTable prefix. For clarity, prepend it with a dt_ prefix."
}
],
"Score": {
    "code_completion": 1.5,
    "execution": 1.5,
    "annotations_comments":

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_19/project.json
Score:

Code Completion: 1/2 - Project lacks an Automation Hub URL.
Execution: 2/2 - There doesn't seem to be any errors preventing code execution.
Annotations and comments: 0/1 - Usage of log messages for better understanding of the workflow is missing.

Total: 3/5
Review:

Main.xaml: Log Message activity should be used in your workflow. This is essential during development and after code deployment. It helps understand the workflow better and trace any errors back to their source.
NoFile: Your project lacks an Automation Hub URL. You could add this in your "Project Settings". This is necessary as per your organization's requirements.
NoFile: Several dependencies like UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.System.Activities, UiPath.Testing.Activities, and UiPath.UIAutomation.Activities are included but not used. These unnecessary dependencies can slow down your project execution. It's better to remove them.

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_20/project.json
NoFile Review Comments

Your organization requires your project to have an Automation Hub URL defined. For fixing it, please go to "Project Settings" and add the missing information.

I noticed that the dependency package 'UiPath.Mail.Activities' is not used. To improve the execution time of the process, it would be beneficial to remove unused packages.

Similar to above, another unused package 'UiPath.Testing.Activities' is also present. For better performance, please remove this package.

Main.xaml Review Comments

The workflow 'Main' is not using the 'Log Message' activity. Using this activity can be helpful both during the development process and after release. It helps to understand the execution flow and can make it easier to identify the source and cause of errors. Please consider using it.

The variable 'ExcelSheet' is not following the standard naming convention for DataTable - 'dt_'. Kindly update the variable name.

The naming of 'Cell_ID' variable does not respect the set pattern ^(dt_)?([A-Z]|[a-z])+([0-9])*$. Please follow the defined naming conventions for variables.

Scores

Code Completion: 2
Execution: 1.

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_21/project.json
NoFile:

Project is missing an Automation Hub URL. Fix: Use "Project Settings" to add the missing information.

UiPath.Mail.Activities package isn't used. Fix: Remove unused packages to improve process execution time.

UiPath.Testing.Activities package isn't used. Fix: Remove unused packages to improve process execution time.

Score: Code Completion: 1, Execution: 1, Comments: 0
Main.xaml:

Log Message activity is not used. Fix: Using Log Message activities can be useful during development and post-release for error tracing, consider adding them if appropriate.

Variable Dt_Output doesn't have DataTable prefix. Fix: DataTable Variables should start with a dt_ prefix.

Variable Dt_Output doesn't follow set pattern ^(dt_)?([A-Z]|[a-z])+([0-9])*. Fix: Ensure all variables follow the naming convention, in this case, DataTable variables should start with dt_prefix.

Variable Cell_ID doesn't follow set pattern ^(dt_)?([A-Z]|[a-z])+([0-9])*. Fix: Ensure all variables follow the naming convention.

Certain activities have a default name. Fix: Assign descriptive titles to activities to easily understand

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_22/project.json
Here's a breakdown of improvements that could be made to your code:
NoFile

Automation Hub URL is missing. Go to Project Settings to add this information.
Unused dependency packages UiPath.Mail.Activities and UiPath.Testing.Activities found. Best to remove them to speed up process execution time.

Main.xaml

You might want to use Log Message in your workflow. They are helpful in understanding the flow path during development, and can also make it easier to find the source of errors.
The variable names ExcelSheet and ResultDT should use proper prefix indicating their type, for example, dt_ExcelSheet and dt_ResultDT.

Scores

Code Completion: 1.5
Execution: 1.5
Annotations and Comments: 0.5

Please take these points into consideration and apply necessary changes to improve your code.

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_28/project.json
Your PR #xxxxxx review is done, here is what to do:

No File

Fill in the Automation Hub URL. Go to "Project Settings" and provide the URL there.
There are some packages like UiPath.Excel.Activities and UiPath.Mail.Activities not needed for this project. Please remove them to speed up the process.

Main.xaml

Please remember to use "Log Message" activities. They help us understand more during the development and troubleshooting phase, easy to find where stuff broke.
You have a sequence named "Excuting different activities in PDF" presenting more than once, Clean it up, you can use the option called 'Remove Surrounding Sequence' in UiPath Studio, just a right-click away.
The activity "Tesseract OCR" is named as default, how about giving it a better name that tells us what it does without checking into details.

Make these changes and submit again, looking good otherwise.
Scored your code as below:
Code Completion: 1.5/2 - There are a few missing parts, but they are not a big problem.
Execution: 1.5/2 - The redundant sequences slow down the process.
Annotations and Comments: 0.5/

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_4/project.json
Here's the review:

No File:

It appears your project is missing an Automation Hub URL. Go to "Project Settings" and add it.

It seems you've included several packages that you aren't using like UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.Testing.Activities and UiPath.UIAutomation.Activities. Get rid of these to speed up the process.

Main.xaml:

I see you've not used the Log Message in the Main workflow. These are essential for tracking workflow lifecycle and spotting errors. You should consider adding them where necessary.

The Assign, Multiple Assign and Message Box activities all have default names. You can replace these with something more understandable, it helps with readability and maintenance.

Score:
Code Completion: 2/2.
Execution: 1.5/2, add log message activities and remove unused packages.
Annotations and Comments: 0.5/1, rename activities to improve the clarity of the code.
Overall: 4/5, Good job, but there's room for improvement.

SourceCode/2023/Oct2023/Basics/Suvedharan/Task23/project.json
GitHub comment for PR
File: NoFile

Your project is missing an Automation Hub URL which is required by your organization. To fix this, add the missing information in the "Project Settings".
There are several dependency packages (UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.Testing.Activities, UiPath.UIAutomation.Activities) that are not being used. To improve on the process execution time, please remove these unused packages.

Score: Code completion: 1.5, Execution: 2
File: Main.xaml

Your workflow "Main" is lacking Log Message activities which are crucial to understanding the flow path and for maintenance purposes. Please add these where they are needed.
The sequence named "Concating the two variable strings" appears to be redundant. Using redundant sequences can clutter the workflow. It would be best to remove redundant sequences to clean up the workflow.
The activity display name "Assign" has been defined multiple times (currently 2). Avoid having duplicate names to provide a clear indication of how they are being used.
Several activities "Assign", "Message Box" have default names. By giving these a more descriptive title will help in understanding what the activity does

SourceCode/2023/Oct2023/Basics/Suvedharan/Task24/project.json
"Main.xaml"

Using of 'Log Message' is recommended both during development and after release. They help in understanding the flow path which is very useful for maintenance and when an error occurs, it helps to identify the problem easier. Use 'Log Message' in your workflow.
'Write Line' activity at 'Displaying the stored value' and 'Output of the replaced value' can be replaced with tracepoints during debugging and should be removed before publishing. If it is crucial for debugging purposes, consider changing 'Write Line' to 'Log Message'.

No Specific File

Adding an Automation Hub URL defined in 'Project Settings' is needed by your organization. Please add it.
Clean up your code by removing unused packages like UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.System.Activities, UiPath.Testing.Activities, and UiPath.UIAutomation.Activities. This will improve process execution time.

Score

Code completion: 1.5/2 (All required actions in the code are not completed)
Execution: 1/2 (Code execution can be improved by removing unused packages)
Annotations and comments: 0.5/1 (Lack of log messages make it hard to understand the flow of the

SourceCode/2023/Oct2023/Basics/Suvedharan/Task26/project.json
Based on the provided information, here is your score and the review for your code.
Scores:
Code Completion: 1
Execution: 1
Annotations and Comments: 0

NoFile:

Missing Automation Hub URL in project settings. You need to provide URL in Project Settings.

Unused Dependency Packages:

There are several unused dependency packages, including UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.Testing.Activities, and UiPath.UIAutomation.Activities. Removing them could help decrease process execution time.

Main.xaml:

There is no use of Log Message in Main.workflow. Log Messages are significant during development and post-release to understand the flow path and easily identify the source of errors.

Message Box display name has been used more than allowed threshold. Avoid using same name multiple times. Change it to give a clear understanding of its usage.

There are several activities with default names (Assign, Message Box and Input Dialog). Giving descriptive names to these activities can provide a better understanding of their purpose and function.

For an efficient and optimized performance, it's essential to adhere to best practices of coding. Looking forward to seeing the improvements in the next pull

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_18/project.json
In NoFile:

Define your project Automation Hub URL in "Project Settings". This information is missing and required by your organization.

Packages UiPath.Mail.Activities, UiPath.Testing.Activities, and UiPath.UIAutomation.Activities are not in use. Toss them out to make your process run smoothly and faster.

Score for Code Completion: 1.5
In Main.xaml:

Do use 'Log Message.' This helps you see the path your workflow takes, making fixing errors and maintenance easier.

Your DataTable Variable is poorly named. Call it dt_DtOutputtable, not DtOutputtable.

Score for Execution: 1
Score for Annotations and Comments: 0.5
Overall, your work needs a touch-up before it's ready. Get these fixes in place and keep learning. Keep it simple next time and only include what you need!

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_19/project.json
In the "NoFile" and "Main.xaml" sections:

You forgot to integrate the Automation Hub URL in your project settings. Make sure to add the missing information.
There are several packages that you've included, but aren't using. Unused packages can clutter your process and increase execution time. It would be best to get rid of UiPath.Excel.Activities, UiPath.Mail.Activities, UiPath.System.Activities, UiPath.Testing.Activities, and UiPath.UIAutomation.Activities.
Also, I noticed your "Main" workflow doesn't make use of the Log Message activity. These are especially helpful during development and debugging phases because they help you trace your process execution. Consider adding some where necessary.

Score:

Code Completion: 1/2 (Code was not fully completed due to multiple unused packages and missing settings)
Execution: 1/2 (Unused packages and missing logging could lead to inefficient execution)
Annotations and Comments: 0/1 (Code lacks necessary comments or annotations for understanding and maintaining it).

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_20/project.json
Score: Code Completion - 1, Execution - 1.5, Annotations and Comments - 0.5
File: NoFile

Your project lacks a defined Automation Hub URL. Head to "Project Settings", there you can fill in the missing info.
Better get rid of the packages you're not using like the UiPath.Mail.Activities and UiPath.Testing.Activities. It could help your project run faster.

File: Main.xaml

Noticed you didn't use any Log Message in the Main workflow. They're incredibly handy tools especially when you're debugging or if something blows up, be sure to include them.
The variable ExcelSheet should start with dt_, so it should look like this dt_ExcelSheet.
Speaking of variables, make sure they stick to the naming convention. The variable Cell_ID doesn't follow that rule.

Keep coding, you're getting there!

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_21/project.json
Since there's no file names in your provided structure to group the output into the Github PR comments, Here's how I would review and deliver suggestions.
NoFile Review:

Score: 1.5/2: Your project doesn't have the required Automation Hub URL. Fix it by adding the URL in the "Project Settings".
Score: 1.5/2: 'UiPath.Mail.Activities' and 'UiPath.Testing.Activities' packages are not used in your project. Remove unnecessary packages which slow down execution speed.
Score: 0/1: Missing annotations in the project. Adding them can help enhance understandability.

Main.xaml Review:

Score: 1/2: Lack of Log Messages to trace the execution process, especially during errors. Use more of it.
Score: 1/2: 'Dt_Output' variable doesn't follow the convention of prefixing DataTable variables with 'dt_'.
Score: 1.5/2: 'Dt_Output' and 'Cell_ID' variables don't respect the set pattern for naming, please follow the correct naming convention.
Score: 1/2: 'For Each

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_22/project.json
NoFile:

Your missing an Automation Hub URL in your project settings. Go into 'Project Settings' and add it.
You've included UiPath.Mail.Activities in your dependency packages but you're not actually using it. Remove it so your process runs faster.
You're not using UiPath.Testing.Activities either, remove it from your dependencies.

Main.xaml:

Not seeing Log Message used in your Main workflow. Log Message is your friend - it helps you understand the flow path during development and lets you easily identify issues when they crop up after release.
Your variable 'ExcelSheet' doesn't start with 'dt_' - try to keep your DataTable variables consistent to avoid confusion.
Same issue with your 'ResultDT' variable - it should start with 'dt_'.

Score:
Code completion: 1.5
Execution: 1.5
Annotations and comments: 0.5
Overall: 3.5/5
Keep working, you're getting there!

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_28/project.json
For NoFile:

As previously noted, your organization mandates that your project must include an Automation Hub URL. You can add this required information in the "Project Settings". Score for code completion: 1/2.

You've added UiPath.Excel.Activities as a dependency, but it's not needed. I suggest you remove unnecessary packages to expedite the execution time. Score for code execution: 1/2.

Likewise, UiPath.Mail.Activities appears to be added but isn't implemented in your code. Remove it to improve execution efficiency. Score for code execution: 1.5/2.

For Main.xaml:

You should incorporate Log Message activity in your Main workflow. These are helpful for both development and post-release purposes, offering insights into the flow path and assisting in swift identification of issues' causes and sources. Score for code completion: 1/2.

Found a sequence, 'Excuting different activities in PDF' which appears redundant. Such sequences tend to clutter the workflow and should be removed. You can do so by using the 'Remove Surrounding Sequence' option of the Context Menu in UiPath Studio. Score for code execution: 2/2.

The 'Tesseract OCR

SourceCode/2023/Oct2023/Basics/Suvedharan/Task_4/project.json
NoFile

Score: Code Completion 2, Execution 2, Annotations and Comments 1
Things to improve:

Add the Automation Hub URL in the "Project Settings". Your organization requires this.
You've got a few packages that are not being used:

UiPath.Excel.Activities
UiPath.Mail.Activities
UiPath.Testing.Activities
UiPath.UIAutomation.Activities
Getting rid of these will speed up your process.

Main.xaml

Score: Code Completion 2, Execution 1, Annotations and Comments 1
Things to improve:

Start using Log Message activities. They’re really useful for understanding where the action is happening. Plus, when an error happens, they make it a doddle to work out why.

@suvedharan
Task-3
Code not available in this pr.
Task-18
Code verified.
Task-20
Code verified.
Task-21
Code verified. Need to check Selectors and output .
Task-22
Code verified. Execution error and need to check output.
Task-23
Code verified.
Task-24
Code verified.
Task-25
Code not available in this pr
Task-26
Code verified. Default activity names

Task-28
Code verified.


Adding a footer

I want to  add a footer to credit the github user.can u assign me and label me under gssoc-etxd.
Thank you!

read the guidelines There is a strict mention there should not be any changes in the home page. Do not be demotivated and raise a new issue.


doc: add guide to dev HTNN

@lyt122
Please take a look. Feel free to approve it if this guide satisfies your needs.


Flow top level instructions and actions (historic OF1.0 format) should be mutually exclusive

Historically, most NApps have been using actions, which on OF1.3 context, it'll be converted as OF FlowMod instruction when being serialized, but we've been also supporting actions to avoid breaking APIs and having to change NApps that use this format. There's no issues or harm to still use actions in the old format, and it'll be maintained, but it should be mutually exclusive with instructions, otherwise it can result in OFPT_ERROR:
Example of invalid payload:
{
    "force": false,
    "flows": [
        {
            "priority": 38000,
            "match": {
                "in_port": 1,
                "dl_vlan": 1004
            },
            "instructions": [
                {
                    "instruction_type": "apply_actions",
                    "actions": [
                        {
                            "action_type": "output",
                            "port": 10
                        }
                    ]
                }
            ],
            "actions": [
                {
                    "action_type": "output",
                    "port": 11
                }
            ]
        }
    ]
}

I think the problem lies in of_core, specifically here. The final dictionary of instructions ends up like:
            "instructions": [
            	{
                    "instruction_type": "apply_actions",
            		"actions": [{"port": 11, "action_type": "output"}]
                },
            	{
                    "instruction_type": "apply_actions",
            		"actions": [{"port": 10, "action_type": "output"}]
                }
            ]

I see other examples that multiple actions should be:
            "instructions": [
                {
                    "instruction_type": "apply_actions",
                    "actions": [
                        {"action_type": "output", "port": 10},
                        {"action_type": "output", "port": 1}
                    ]
                }
            ]

Do we want to support instructions with multiple apply_actions? If not, I see that actions list should be ordered, which field from the request should be first, actions should be added to existent instructions last?

Do we want to support instructions with multiple apply_actions?

That's a good point, based on the spec and OvS man page, for each instruction, it should not repeated the "instruction_type":

Every  version  of  OpenFlow  includes actions.  OpenFlow 1.1 introduced the higher-level,
related concept of instructions.  In OpenFlow 1.1 and later, actions  within  a  flow  are
always  encapsulated within an instruction.  Each flow has at most one instruction of each
kind,  which  are  executed  in  the  following  fixed  order  defined  in  the   OpenFlow
specification:

      1. Meter

      2. Apply-Actions

      3. Clear-Actions

      4. Write-Actions

      5. Write-Metadata

      6. Stat-Trigger (not supported by Open vSwitch)

      7. Goto-Table

and probably for each action, we probably shouldn't allow repeated action_type either, but I confirmed in practice, that at least with OvS it didn't crash though, here's an example with multiple output action_type:
 cookie=0x0, duration=1024.068s, table=0, n_packets=0, n_bytes=0, send_flow_rem priority=38000,in_port="s1-eth1",dl_vlan=1004 actions=output:10,output:11

but for the action_type, let's leave it for another iteration and issue, just so there are cases like this one above that it still be great to still keep paring this flow without crashing or discarding it.
In summary

Let's start validating to accept only a different instruction type per instructions on flow_manager API.
Let's start validating to accept only either instructions or actions mutually exclusive at the top level on flow_manager API
On the part that you mentioned on of_core, historically actions used to be supported at the top level due to OF1.0, we still want to maintain this compatibility to avoid breaking dicts and API payloads, but in that part you showed, I believe when actions is set, if you were to add an early return that would also improve it since it wouldn't try to process instructions again. Good catch @Alopalao, I think it'd be worth to create a new issue and address it too there, even though with flow_manager validation that part theoretically wouldn't be hit at least for most of our NApps that send FlowMods.

Let me know if you agree and share the same understanding @Alopalao. cc'ing also @italovalcy in case he wants to confirm or point out any other requirement.

Makes sense to me, I'm on it.


Allow subclass of ArcanistUnitTestEngine in MultiTestEngine

Looks like this check is a little aggressive since the RSpecTestEngine extends from ArcanistUnitTestEngine now and not the deprecated ArcanistBaseUnitTestEngine.  PHP is not my strongest, so feel free to give feedback on style or errors I might have here.

Looks great!


array of items in getTextContent() not always in correct order

Sample: https://technobility.nl/tests/pdf.html
Configuration:

Chrome 97
Windows and Mac
PDF.js version: Latest from: https://mozilla.github.io/pdf.js/build/pdf.js

Steps to reproduce the problem:

I've used a example from this github which shows page by page.
As soon as a page is loaded use page.getTextContent(); to receive all items on the page.
Output the first string of every items-array with console.log(textContent['items'][0]['str']);

What is the expected behavior?
I hoped to get the first string on the page with this method.
What went wrong?
On most pages I get indeed the first string, but on some pages not.
In the sample (see above) on page 13 I get the following string "Er worden ondertitels voor doven en slechthorenden geleverd voor alle live audiocontent in".
The first string should be the heading above this sentence.
When I use function getStructTree() I see that the heading is the first object. This is also logged in console.log in the sample.
Also when checking the code-base of the PDF (tags) I see the heading is the first on the page.
Somehow the first string as found by page.getTextContent() is not always the string from the first object as found by page.getStructTree()
What do I need?
I need a method to get every first string on every page.
getTextContent() looks promising, but gives wrong results on some pages.

I need a method to get every first string on every page.
getTextContent() looks promising, but gives wrong results on some pages.

Unfortunately that's a bug in the PDF document itself, rather than in the PDF.js library, since the text-content of the page is apparently rendered out-of-order. In general this is a quite difficult problem to work-around.
Duplicate of #2344 (since it's for all intents and purposes the same issue).

Unfortunately that's a bug in the PDF document itself, rather than in the PDF.js library, since the text-content of the page is apparently rendered out-of-order. In general this is a quite difficult problem to work-around.

I don't know if this is correct. The order in the PDF is correct as getStructTree() get's the correct order from the page.
It's strange that I can get the correct elements on the page with the correct order with getStructTree(), but I don't get the correct strings in the right order with getTextContent();
Let me ask it in another way:
Is it somehow possible to get contents (string) from the first element on the page given by getStructTree()?
Or: is it possible to add the contents (string) in the data returned by getStructTree()?

@BartCardan, there's nothing actionable without the pdf, so please provide it.

The order in the PDF is correct as getStructTree() get's the correct order from the page.
[...]
but I don't get the correct strings in the right order with getTextContent();

The structTree and the textContent are completely different data-structures, in the PDF specification, hence it's not actually strange that they don't agree completely w.r.t. for example the ordering.

Or: is it possible to add the contents (string) in the data returned by getStructTree()?

No, since as mentioned they are not directly related and their parsing is (purposely) independent.

Although, I suppose that you might be able to infer the desired information by using the PDFPageProxy.getStructTree() and PDFPageProxy.getTextContent({ includeMarkedContent: true, }) methods together; please refer to https://github.com/mozilla/pdf.js/blob/583c39b85966f640292f95ccd1d05207ce9f9ca5/src/display/api.js#L1076-L1077

@BartCardan, there's nothing actionable without the pdf, so please provide it.

The PDF used in the example: https://technobility.nl/tests/test.pdf

@Snuffleupagus Thank you. This helped. I think.
With page.getStructTree() I can get the ID of the first element.
With page.getTextContent({ includeMarkedContent: true, });  I can get a list of all items on the page. Next step is to get the first item with content AFTER the item which contains the same ID of the first element.
This looks promising. As soon as I have a working code I will add it to this issue for other users.


Running demo code on offline videos

How to perform the MediaPipe pose extraction from an offline video rather than the webcam feed?

Got it. Thanks.

@Shreeshail-Hingane can you plz share code snippets if you have done with it? thanks


Atomic writes throw an error when writing to docker mounted file

Expected Behavior
Click should write to the file normally without throwing an error.
import click

# out.txt is a file mounted directly in docker (ie, only it is mounted, not its parent directory)
# like this: docker run -v `pwd`/out.txt:/work/out.txt click-err
def main():
    f = click.open_file("out.txt", "w", atomic=True)
    f.write("test")
    f.close()

if __name__ == "__main__":
    main()

This repository sets up the whole scenario in docker and reproduces the issue
https://github.com/mikegedelman/click-atomic-write-error
I also verified that writing to these files using stdlib functions works normally.
Actual Behavior
Click thows this error when calling f.close()
Traceback (most recent call last):
  File "/work/main.py", line 11, in <module>
    main()
  File "/work/main.py", line 7, in main
    f.close()
  File "/usr/local/lib/python3.7/site-packages/click/_compat.py", line 619, in close
    _replace(self._tmp_filename, self._real_filename)
OSError: [Errno 16] Device or resource busy: '.__atomic-writee31adfb9' -> '/work/out.txt'

Environment

Python version: 3.7.3
Click version: 7.1.1

Thanks for posting this issue, and providing an example.
I'm guessing this is a permissions issue with docker, the process probably doesn't have the correct permissions to write to a temporary file in the directory where out.txt is located.
What host OS are you using with docker?

I'm currently using macOS Catalina 10.15.5 with Docker Desktop <IP_ADDRESS>, and I still can reproduce the error in my example repo.

Atomic writes don't write directly to a file, they write to a temporary file then replace the existing file. Does mv tmpfile /work/out.txt in your Docker work? Does os.replace(...) from a Python console in your Docker work?

Both of the commands David suggested give the same "Device or resource busy", so I don't think this is a problem with click, but a result of the way docker handles file mounts.
You can work around this by mounting the directory that contains your file instead of the file itself.
cp and shell redirects also still work.
According to this SO post docker doesn't let you change the inode of file volumes from inside the docker container.


../FathymBuild.h: No such file or directory

Veryfing code using this library in Particle Build fails with this error:
Fathym/Fathym.h:31:28: fatal error: ../FathymBuild.h: No such file or directory
 #include "../FathymBuild.h"
                            ^

Hey John, sorry for the error. I'm still trying to get the library successfully integrated into the online particle ide.
If you have the desktop particle dev environment installed, this repository should work for you.
https://github.com/fathym/fathym.io_ParticleDev/blob/master/README.md
Check it out and let me know how it goes!
Thanks


Simplify CacheTagHelper.ProcessAsync

Modify ProcessAsync to cause all tasks to fail when the ongoing GetChildContentAsync call that they're
awaiting on fails.

I'd recommend using https://github.com/aspnet/Mvc/pull/6506?w=1 to look at the actual diff.

🆙 📅


Cannot set this.body inside an Async call

I am trying to make an async call to a database in my route function, and I see the error:
throw new Error('Can\'t remove headers after they are sent.');
It seems koa itself sets the this.body synchronously. How to prefer that until ı can set it with the returned from query result. Should I use a third-party defer tool. If so this is a common case for an http server, shouldn't there be a built in correct way to achieve such purposes?
function x(cb) {
		g.V("Humphrey Bogart").In("name").All(function(error, result) {
			if(error){
				console.log(error);

			} else {
				console.log("from query callback:", result);
				cb(result);
				//app.use with url match
			}
		});
};

publicRouter.get('/x', function* (next){
	x((result)=>{
            console.log("from route:", result);
            this.body = result;
 });
});

Here a use yield and it works for that library. a query to Postgresql with pg-promise:
publicRouter.get('/db1', function* (next){
	var result = yield db.query('select * from news');
	if(!result){
		console.log(result);
	}
	console.log(result);
	this.body = result;
});

But here yield does not work to set this.body, which is leaved undefined. This one uses another library. A query to cayley db with cayley-node:
function* x() {
		g.V("Humphrey Bogart").In("name").All(function(error, result) {
			if(error){
				console.log(error);

			} else {
				console.log("from query callback:", result);
				return result;
			}
		});
};

publicRouter.get('/x', function* (next){
	var result = yield x();
	if(!result){
		console.log(result);
	}
	console.log(result);
	this.body = result;
});

updated your issue to be more readable

:) I was just update it too. adding github flavour to my markup.

the problem with the first example is that your function*(next){} function finishes before this.body is set.
The flow of events is
publicRouter.get('/x', function* (next){
    // 1)
    x((result)=>{
            console.log("from route:", result);
            this.body = result;
            // 3) this is where you're really done
   });
   // 2) now koa thinks you're done
});

Your idea to yield x was on the right track, however your function* x still uses callbacks internally. You need to make the g library promise/thunk/generator compatible. Either find a version of it that already supports one of the before mentioned, or wrap it's call like so:
function* x() {
        const query = g.V("Humphrey Bogart").In("name");
        const All = thunkify(query.All.bind(query));
        var result = yield All();
        console.log("from query callback:", result);
        return result;
};

In the meantime I have done this, and it works:
publicRouter.get('/x', function* () {
	yield g.V("Humphrey Bogart").In("name").All((error, result) => {
		if(error){
			console.log(error);

		} else {
			console.log("from query callback:", result);
			this.body = result;
		}
	});
});

thanks for responses. Should this issue be closed?

ah, so .All already returns a promise. try
var result = yield g.V('...').In('...').All;
this.body = result;

@juliangruber you take them just from my mouth, :), thank you very much. yours precedes again.

glad to help!

Hi @isikfsc! I'm glad you found an answer to the problem you were facing and learned more about the API you were trying to use. I'd like to ask why you didn't ask your question on StackOverflow (using the #koa tag) or one of the other community mediums outlined in the README.
I understand that it's difficult to get an answer on StackOverflow sometimes and that it's tempting to go straight to the maintainers. After all, they're the ones who built it, they know best how to help you, right? Unfortunately when we use GitHub issues as a support avenue instead of bug tracking, feature requests, and other development-specific issues, it makes it harder to maintain and support open source projects.
It's not a single email that makes the difference. I don't mean to harp on you specifically — it's an obstacle that all open source projects face. I just want to point it out and for you to think about it.

Hi @lourd.
I agree with your remarks, I also would not want to spend the time of the maintainers that bring us awesome tools.
I was not very well aware of the other community channels to ask questions on, my mistake.
On SO, I face the difficulty you mentioned. if not tempted I felt repelled from the place I am familiar asking questions, SO, to the some sort of second place I am best aware of for issues.
After all this, there was in the question, if you remember, my impression of "this should be in other way". So if it was correct some maintainer related action should be taken. That is the big why of I carried my investigation here. But it turns out my mistake. The problem was in the scope of my arrows, now I am aware.

@isikfsc In the future, if the same issue happens in a different context, you can use a regular callback function on the top level, while wrapping the implementation into a task with generators, if you want to use generators that is:
publicRouter.get('/db1', function (next) {
    db.task(function * t() {
            return yield t.query('select * from news');
        })
        .then(data=> {
            this.body = data;
        })
        .catch(error=> {
            console.log(error);
            this.body = error; // or something else;
        });

});

@vitaly-t thanks.
If I do not use generators, and use promise signature here, (and for future maintenance convenience if koa will switch to that style ,too), with a normal function again;
publicRouter.get('/db1', function (next) {
    var self = this;
    db.query('select * from news')
        .then(data=> {
            self.body = data;
        })
        .catch(error=> {
            console.log(error);
            self.body = error; // or something else;
        })
});

no task used. Is that correct, will it set the ctx.body before koa does? As was the case @juliangruber above.
My point is to be able to set the this.body and anything related to koa's ctx inside a Promise thenor catch. Otherwise it turns out to be inconvenient, doesn't it, for route handlers in web apps?

@isikfsc that looks fine also.

Later I have tested it does not work.
Somehow koa sets the ctx.body itself no matter I use arrow callback functions to allow this to be koa handler's this, i.e. ctx, or carry koa ctx inside callback functions via assigning a variable, self, to this, koa ctx, outside callbacks.
I think I must open a question on SO. How to access request or response objects inside a callback function in a route handler, without yielding?


The position of imepopup is offset in some cases

Already reported ? *

[X] I have searched the existing open and closed issues.

Regression?
No
System Info and Version
 System/Version info
Hyprland, built from branch main at commit e74efd87e5aa38f9cf84cb3848ee1ab26e5e4bcb dirty (internal: fix initial cursor warping (7793)).
Date: Sun Sep 15 06:37:18 2024
Tag: v0.43.0-25-ge74efd87, commits: 5221

flags: (if any)

Description
The position of imepopup is offset in some cases. I tested xwayland and wayland client and it only appears on wayland client.
How to reproduce

Open two wayland clients, activate fcitx5 in the current focused window, and activate fcitx5 in the previous window. You will find that the imepopup position is offset.
Swapping the two client positions, the position of imepopup is sometimes correct and sometimes incorrect.

Crash reports, logs, images, videos
https://github.com/user-attachments/assets/1e2d124a-6c9b-474e-84d7-81d51a6e7ce4

@sungyoonc

Do you have multiple displays connected by chance?
I suspect the issue I'm seeing is related. It seems like the popup's position is being calculated using stale information.
I have two displays, a 4k on the left, and a 1440 on the right. When Steam's splash screen, gimp's splash screen, or my rofi launcher first open up on a monitor, they are often in the wrong position.

Steam: when opened on the left (4k) monitor, the splash is correctly in the center, but when I open it on the right (1440) it's pushed further to the bottom right of the monitor (probably using 1920x1080 as the center).
Gimp: same behavior
Rofi launcher: the first time I open rofi after launching hyprland, it seems to use 1920x1080 as the center (pushing it to the bottom right of the 1440 screen), but each subsequent time it seems to use the center point of whatever the previous display it was opened on was.

Rofi experience:

open rofi on the 1440 screen -> esc to close it -> open it again
the first time it opens it will be pushed toward the bottom right, but the second time (and every time after) it will be correctly in the center.
then if I move my cursor to my left (4k) display and open it -> close it -> open it
the first time it opens it will be pushed toward the top left of the screen (as though it is using half of 1440 as the center point, 1280x720), but on subsequent opens it will be in the correct center.

Do you have multiple displays connected by chance?

Single monitor.

I have the same issue @stevenre3d , mainly with orca slicer, and after I disable the "gliched" monitor and enable it again, everything goes back to how it should


Server method arg names Feature.

Is your feature request related to a problem? Please describe.
I want my ide auto complete the code implement the server interfaces.
but no method arg names in the code, I need to add them every time.
Describe the solution you'd like
when generate the code add the method args names.
eg:
type FooServer interface {
	GetFoo(context.Context, *Request) (*Resp, error)
}

My IDE generate this code:
type myServer {}

func(m *myServer) GetFoo(context.Context, *Request) (*Resp, error){
}

and what I need is this:
type myServer {}

func(m *myServer) GetFoo(ctx context.Context, in *Request) (*Resp, error){
}

and if the sign have the arg names in there interface definition, IDE will auto complete them.
That can help me save many time.

Can you be more specific about what you would like us to do? Is there something actionable on our end? This seems more like an issue with the IDE auto-completion implementation than with golang/protobuf specifically.

Hope to add arg names to method.

Oh, I see. Your auto-completion tool attempts to derive the variable name from the method in the interface.
I'm going to close this as infeasible. Fundamentally, protoc-gen-go has no additional information that your auto-completion tool doesn't have already.
The very same problem that your auto-completion tool has is the same problem that we have. When your autocompletion tool sees an interface method without variable names, it either has to:

Not emit them (which is apparently what it does now).
Choose something sort of reasonable from the type. This is imperfect and won't satisfy all cases.

We have the exact same problem in protoc-gen-go. When we try to generate the interface methods, we have no idea what to name the variable, so we either:

Don't emit them (which is what we do).
Choose something sort of reasonable from the type (which will be imperfect).

protoc-gen-go is in the business of trying to be much more exact and trying to do less guess work. It seems like the wrong place to make this change. On the other hand, an auto-completion tool by its nature is fuzzy, and seems to be a more appropriate place to attempt to derive a variable name.

as you generate the Client interface with arg names, why can't generate the server?
type UserServiceClient interface {
	CreateUser(ctx context.Context, in *CreateUserRequest, opts ...grpc.CallOption) (*CreateUserResponse, error)
}


Unable to Connect to Firestore on iOS 18 devices.

Description
App cannot connect to Firestore or other services after building to an iOS 18 target.
App does connect when deploying to iOS17.5 device.
Existing app (from app store) still connects.
This is experienced only on new builds to iOS 18 devices. The issue DOES NOT occur when deploying to an iOS 17.5 device / simulator.
11.2.0 - [FirebaseFirestore][I-FST000001] Could not reach Cloud Firestore backend. Backend didn't respond within 10 seconds.
This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.
Reproducing the issue
Upgrade device / xcode to latest.
XCODE: Version 16.0 (16A242d)
DEVICE: iOS 18.0
Build app - attempt to query firestore.
Firebase SDK Version
11.20
Xcode Version
16.0
Installation Method
Swift Package Manager
Firebase Product(s)
Firestore
Targeted Platforms
iOS
Relevant Log Output
11.2.0 - [FirebaseFirestore][I-FST000001] Could not reach Cloud Firestore backend. Backend didn't respond within 10 seconds.
 This typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.

If using Swift Package Manager, the project's Package.resolved

Expand Package.resolved snippet

Replace this line with the contents of your Package.resolved.

If using CocoaPods, the project's Podfile.lock

Expand Podfile.lock snippet

Replace this line with the contents of your Podfile.lock!

Hi @MagicFlow29 ,
I tested iOS 18 on Xcode simulator with latest version of Xcode and Firebase SDK. The app connects to backend successfully. Could you please upgrade the Xcode and SDK, and check the Internet connection on your device or/and simulator? Please let me know if you are still running into problems.

Hi @MagicFlow29 ,
Could you please enable debug logging and share it with us? Also can you create a simple repo app to see if the problem also exists in the new app?

A fresh app did in fact connect successfully. Were you able to see anything in the logs? I'll start stripping the existing / production code base down to figure out what's caused it.... but feel it could be a setting somewhere that perhaps Apple isn't upgrading on pre-Xcode 16 apps...

OK thanks for your help... realising this must be something specific to my app and not firebase, I did find that a memory leak within SwiftUI was introduced when deploying to iOS 18 devices which subsequently caused the issue with Firebase not being able to connect.


set_multiplayer_authority doesn't save 64 bit numbers correctly.

Tested versions
Godot 4.2 (mono)
With GD Script
System information
Windows 10 64 bit ryzen 5600. Godot 4.2.1 stable mono official b09f793f5
Issue description
I have a 64 bit integer I print the value of. It is the correct value.
my number is in the "quadrillions." (5 commas)
When I set the value, it changes to a number in the millions.
Steps to reproduce
Using GD Script
# Example number with commas : 12,345,678,901,234,567
var my_id : int =<PHONE_NUMBER>1234567
print("My number is : " + str(my_id) )
my_other_node.set_multiplayer_authority(my_id)
print ( "Is my number the same? " + str(my_other_node.get_multiplayer_authority) )
Minimal reproduction project (MRP)
As far as I'm aware this is all you need.
I'm not using Godot's multiplayer API for anything. I WAS using that. The steps to reproduce should be capable of showing you the problem.

The value isn't 64 bits, it's 32 bits


Auto bind this for object type v-on

What problem does this feature solve?
const clickObj = {
  click() {
    console.log(this) // this will be null or window, depent on the environment.
  }
}

new Vue({
  el: '#app',
  data() {
    return {
      clickObj,
    }
  },
  template: `<div v-on="{clickObj}">unbind this</div>`
})

Maybe it is better to bind this in v-on directive, so developer can get Vue instance without bind this themselves.
What does the proposed API look like?
Auto bind  this in v-on directive

Thanks for the proposal but usually, the functions come from methods or are arrow functions defined in a computed property. Having the function defined outside is quite uncommon, and we do not get that much less as it could be even achieved with a helper that adapt to your specific needs (as most of the times you want to use methods or fat arrows).
Besides that, we prefer explicit behaviours, so doing bind in the app is preferable


"Auto correct alias" setting of PowerShell extension not working

Issue Type: Bug
Problem
The "Auto correct alias" setting of the PowerShell extension is not working as it should. If you activate it, nothing will change.
Expected result
After typing an alias, the extension should switch it out with the correct expanded Cmdlet. It should do the same as the shortcut Shift + Alt + E.
Actual result
Nothing happens. The aliases are still reported as problems and are not being replaces with the correct expanded Cmdlet.
VS Code version: Code 1.43.2 (0ba0ca52957102ca3527cf479571617f0de6ed50, 2020-03-24T07:38:38.248Z)
OS version: Windows_NT x64 10.0.17134

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-7500T CPU @ 2.70GHz (4 x 2712)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: enabledrasterization: enabledskia_renderer: disabled_off_okvideo_decode: enabledviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_off_okwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
7.87GB (2.72GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (2)

Extension
Author (truncated)
Version

vscode-html-css
ecm
0.2.3

powershell
ms-
2020.3.0

/extPowershell

Thank you:
https://github.com/PowerShell/vscode-powershell/issues/2608


Add files via upload

Program For Next Permutation Problem
Please Accept my pull request, Thank You!

I have deleted the other Program and added the Hello World for Apple Script language.
Thank You!


Add jest coverage script (Resolves Issue #13)

This adds a script in package.json for the jest coverage report to run.
The coverage directory was already in the .gitignore.

cool thanks for the contribution


Ability to call with error test.

Adds a new function Object.call_with_error_test
Allows to tell if the call of a function fails and the reasons behind the failure. Should help better implement unit tets and other situations.
Usage example:
var err = CallErrorInfo.new()
var ret = object.call_with_error_test(err,"function",args)

if (err.get_call_error() != CallErrorInfo.CALL_OK):
      print("Something went wrong")

Why the err variable?
var err = CallErrorInfo.new()

Seems to be redundant to be declared before the call. Can it be generated inside the call_with_error_test and return in ret?

Would you suggest returning an array, or how would you return both the value and the error? This would also make the call harder to adapt to existing code by having you extract the return

I was suggesting returning an object with error and value or ret. Extracting the value is not big of a deal. To me its tedious if I have to declare a variable before using it
var response = object.call_with_error_test(err,"function",args)

if (response.get_call_error() != CallErrorInfo.CALL_OK):
      print("Something went wrong")

You wont event need to ask error directly. But you can still have it if you need it from response.error

That's more clear, thank you, but I think it still makes the code more convoluted

@jcostello The call can return a value if the function returns a value, so the return is needed.

Will error messages emitted by the failing call be silenced?
If errors are expected, it seems like that would be desired in most cases... :thinking:

@jcostello The call can return a value if the function returns a value, so the return is needed.

I was implying to have the error declared inside the call_with_error_test method and return as part as the reponse. I dont see the point of pasing it as a reference. To me it too C style of doing things

@jcostello The call can return a value if the function returns a value, so the return is needed.

I was implying to have the error declared inside the call_with_error_test method and return as part as the response. I dont see the point of pasing it as a reference. To me it too C style of doing things

I concur, it makes it really C-like. Is it the first API where we pass an error?

I'm not sure if the approach here is ideal, I see a few flaws with it. Consider the following example:
@tool
extends EditorScript

func _run():
	print("beg run")
	var err := CallErrorInfo.new()
	call_with_error_test(err, "a")
	prints("err", err.get_call_error())
	print("end run")

func a():
	print("beg a")
	b()
	print("end a")

func b():
	print("beg b")
	c()
	print("end b")

func c():
	print("beg c")
	var x = self
	x.nope()
	print("end c")

The first issue I see is that this breaks compatibility in terms of how errors are treated and propagated. In current stable (4.3) the call to c() will fail because it tries to call a non-existent function. But it won't raise an error so b() will finish executing (and so will a() and _run()). With this PR, the call to c() will also give an error and it will be propagated until the first call to _run(). The test here will avoid _run() raising an error too.
If we remove this change in behavior, then the test call in this example will not be useful, because a() will not raise an error even though c() did. The call_with_error_test() will say the call went fine, so you cannot really "catch" the error deep down.
If we try call_with_error() to call c() directly, we will then get a SCRIPT_ERROR because that's what c() will raise. But this tells nothing about the actual error that happened within c() which is an INVALID_METHOD. This bubbling up of error does not preserve the original message, which reduces a lot the usefulness of this system. It will pretty much always get a SCRIPT_ERROR, so the CallErrorInfo object will almost never contain any useful information (might as well just be a bool instead of an object).
The other problem is the interface as some already pointed out. Passing an object is common in C/C++ but not in GDScript. I would suggest just returning an array with the first element being the value and the second being the error result (which may be just an OK). It would be more convenient with destructuring, but it's still better than having the create an object beforehand IMO.
For this to work as intended and be useful I would say it requires these points:

The error should be passed no matter the depth of the call stack (not entirely needed but I think it would be more useful).
The original error should be passed around, not replaced by another one.
It should not change the execution behavior and allow functions that didn't error to keep running and not return erros. I know this creates the possibility of having more than one error to bubble up, but we can agree on a convention (like only passing around the first error found).

This is almost like exceptions in a way, but without the overhead of actual exceptions. Also, I would consider making this a GDScript construct instead of being an Object/Callable method. This way we could even consider having a different call flow when this is used. Would also be easier to validate the call at compile time.

The first issue I see is that this breaks compatibility in terms of how errors are treated and propagated. In current stable (4.3) the call to c() will fail because it tries to call a non-existent function. But it won't raise an error so b() will finish executing (and so will a() and _run()). With this PR, the call to c() will also give an error and it will be propagated until the first call to _run(). The test here will avoid _run() raising an error too.

At some point between 4.0 and 4.1 we broke (or fixed) this.


Format Code - set indent

Currently this sets the indent at 4 characters.  Can I change that to be 3 characters?

@tonytmtsh Thx for the suggestion, I've added the config feature. U can use the command Formatter Config to set the options. For more info Readme;


Caniuse WebSite Not working at the moment

Reproduced in both chrome and firefox. I am on a Mac.

Probably a temporary outage, is it working for you now?

Yes it's working for me now ... Gonna close it thanks


[WIP] Support to KFP via Dex Authentication

Solves #755
Initial support to authentication restricted kubeflow environment (using dex)

[X] Update kfp dependency version to 1.0.0
[X] Add api endpoint credentials to kfp schema
[X] Authenticate as client to kfp server and store session cookie
[ ] Encapsulate auth values
[ ] Add tests
[ ] Update docs

Flow:

User creates a new kfp metadata and add (optional) values for api_endpoint_user and api_endpoint_password, when using kfp authentication restricted environment
User submits a pipeline through Elyra and select the auth restricted kfp endpoint schema
Elyra authenticates connection with the kfp server and stores its session cookie (no programatically authentication via KFP SDK available yet)
Kubeflow issue: - Making a request auth to kfp passing an invalid session cookie produces too generic error: No host specified
Pipeline is uploaded, Elyra displays access link
User logs in from the browser and accesses kfp dashboard (find the new pipeline on the dashboard list)

Developer's Certificate of Origin 1.1
   By making a contribution to this project, I certify that:

   (a) The contribution was created in whole or in part by me and I
       have the right to submit it under the Apache License 2.0; or

   (b) The contribution is based upon previous work that, to the best
       of my knowledge, is covered under an appropriate open source
       license and I have the right under that license to submit that
       work with modifications, whether created in whole or in part
       by me, under the same open source license (unless I am
       permitted to submit under a different license), as indicated
       in the file; or

   (c) The contribution was provided directly to me by some other
       person who certified (a), (b) or (c) and I have not modified
       it.

   (d) I understand and agree that this project and the contribution
       are public and that a record of the contribution (including all
       personal information I submit with it, including my sign-off) is
       maintained indefinitely and may be redistributed consistent with
       this project or the open source license(s) involved.

Don't we still need this portion from the previous 'else' block (just not in an else block)?

No, because now we're using requests.Session() object which allows cookies to persist across all requests, no need to check the history anymore


Fix issue with mail generation

Change the way to call the email generation from generateMail(data)(event.data[model].node) into generateMail(event.data[model].node), probably due to a mistake when doing some kind of refactoring to remove the data variable

Thanks a lot 👍


Use JavaScript for back links

We currently recommend people add URLs to back links by hand. I think in the large majority of cases, using JavaScript to go back will be fine, and means it Just Works, making prototyping easier and faster.

Just double-checking you mean just for prototyping - rather than for the back-link component in GOV.UK Frontend?

Yeah I meant just for prototyping, but you raise a good point, another example of where production and prototyping needs might be different. Maybe the kit can consume the back link, and add the JavaScript to it in the template question page

We should consider if the JavaScript should be used in production too.

Agreed, given that the browser back button should work as advertised anyway.
$$ question: What kind of 'back' is the right one? Is it  whatever the previous page was, or some predetermined URL?
Example: You go back to question 5 from the 'Check your answers' page. Does the back link:
a) take you to the 'Check your answer' page
b) take you to question 4

I think it's the check your answers page, but probably some research would help. But I think the previous browser page (JavaScript history -1) is the majority case so it'd be useful to change that in the kit. It can always be changed for specific contexts.

Suggest we start by changing the link in breadcrumb on the Question page template to 'JavaScript history -1'

This came up again on support.

There was a conversation on Slack and Joe encourgaed us to share, so my two pence...
We're working a large prototype at the moment with a bunch of different designers, some of which use JS back links. It causes a bit of a problem in that links will be shared to page in the journey and you'll want to see what came before, but the back link doesn't work.
Not a massive problem but adding URLs makes the teams lives a lot easier.
One negative though is that we have to deal with pages, like CYA, that might have different routes to get to it, so we have to have some if statements to deal with that.


fix/Tabs: make conditional tabs work even after re-render

This will fix issue https://github.com/jamesmfriedman/rmwc/issues/336

Thanks, I've known about this for a while, but haven't run back into it since I don't often do this. I'll get your PR merged in.
I appreciate you hunting it down and fixing it!

Thanks a lot @jamesmfriedman. When do you think the @rmwc/tabs package will be published on npm ?

When issues get fixed, I try to patch them day of. There was another minor issue with TextField classNames so I'll get that fixed as well. So sometime this morning.
There was a small error in your logic. Can you verify this fixes your issue still?
(child: any) => (child && child.key) || {}

It does not seem to me that this is the same behavior.
I'm not sure what you wish to achieve but in my case child.key is always null.
Maybe what you want to test is if value have changed
in this case it would be (child: any) => (child && child.props && child.props.value) || {}
Or you want to check if any of the props have changed
in this case it would be (child: any) => (child && child.props) || {}
But for the record, I'm not sure stringifying props is the most recommended way to check for differences, we should more enumerate all changing values

The root of this issue is actually extremely complicated. Basically, you can't guarantee the children of the TabBar component is actually a Tab because of things like styled components, or any other component that might encapsulate the Tab.
The TabBar and Tab component will get an internal rewrite soon. In the meantime, as long as this fix works I'll keep it in there.

Ok thanks, I'll check later if package has been published, thanks again for the great work


furnace.getFuel() seems to always return -1

Issue Description:
furnace.getFuel() always return -1
What happens:
furnace.getFuel() always return -1
What you expected to happen:
furnace.getFuel() should return actual time for the fuel
Script used (Please Pastebin or gist your script, posting an unpasted or ungist'd script will automatically close this issue):
https://pastebin.com/nWF1yTzU
Minetweaker.log file (Please Pastebin or gist your file, posting an unpasted or ungist'd file will automatically close this issue):
https://pastebin.com/zPUM2cSW

Affected Versions (Do not use "latest"):

Minecraft: 1.12.2
Forge: <IP_ADDRESS>11
Crafttweaker: 4.1.2
MTLib: 3.0.1

So this is an issue with how Forge changes furnace fuel times, there is nothing I can do to fix it fully, but I have added some code which should make it a bit more reliable


[Hybrid] Dynamic Link and Routing - PWA approach

GUS: https://gus.lightning.force.com/lightning/r/ADM_Work__c/a07EE00000t0GJqYAM/view
Related PRs:

https://github.com/SalesforceCommerceCloud/pwa-kit/pull/478
https://github.com/SalesforceCommerceCloud/pwa-kit/pull/468

Description

This PR is one solution implemented in the PWA to reduce the required manual changes in the PWA to resolve Links and Routes to SFRA on Hybrid PWA/SFRA projects.
Problem
Today we require a set of manual steps to configure the PWA to resolve Links and Routes to SFRA:
Routing
Manually edit the PWA routes.jsx file.

Remove the route's paths that we want to be resolved by SFRA.
E.g Redirect Checkout pages to SFRA.
Remove the object path: '/checkout' from the routes array.
https://github.com/SalesforceCommerceCloud/pwa-kit/blob/e33d6dff295cb4f70b4822f777dd724f146c6243/packages/pwa/app/routes.jsx#L67-L71

Replace the PWA <PageNotFound /> component with a Redirect to the external site.
Routes not matching any PWA path are redirected to the SFRA site.
https://github.com/SalesforceCommerceCloud/pwa-kit/blob/e33d6dff295cb4f70b4822f777dd724f146c6243/packages/pwa/app/routes.jsx#L103-L111

Links
Manually replace all the relative PWA links pointing to pages that we want to be resolved by SFRA with absolute links.
E.g. Redirect Checkout links to SFRA.
Replace all the PWA relative links '/checkout' with absolute SFRA checkout links ${getAppOrigin()}/s/RefArch/cart?lang=en_US.
Solution PWA approach
Routing
Potential automation (not implemented): Automate the routes pointing to PWA pages file automatically, based on the existence of files inside the page folder. Theroute.jsx in the PWA will not need to contain page routes. The SDK will add those routes automatically.
Add a flag to enable the wildcard redirect * to an external origin.
Links
Updated our <Link /> component by adding a utility using react-router matchPath to check if the link href matches a PWA route.

If the link href matches a PWA route path: We use a relative URL pointing to the PWA site.
if the link href doesn't match a PWA route path: We use an absolute URL by using an anchor element pointing to the SFRA site.

TODO:

[ ] Add configuration value to default.js config file defining the SFRA hostname.

Types of Changes

[ ] Bug fix (non-breaking change that fixes an issue)
[ ] New feature (non-breaking change that adds functionality)
[ ] Documentation update
[ ] Breaking change (could cause existing functionality to not work as expected)
[ ] Other changes (non-breaking changes that does not fit any of the above)

Breaking changes include:

Removing a public function or component or prop
Adding a required argument to a function
Changing the data type of a function parameter or return value
Adding a new peer dependency to package.json

Changes

Duplicated the matchPath logic used in the SDK to a PWA util called matchRoute.
Extended the PWA <Link /> component to use an anchor element for non-routable paths.
Replace the PWA <PageNotFound /> component with a Redirect to the external site in the routes.jsx file.

How to Test-Drive This PR

Checkout this branch hybrid-redirect-to-sfra
npm ci
Run npm run start --prefix packages/pwa

Verify:

Internal links work as expected by navigating through the App.

Links that have a path that doesn't match a PWA route, point to the external origin.
Navigate to the PDP and click the "Show full details" link below the photo gallery.

Checklists

General

[ ] Changes are covered by test cases
[ ] CHANGELOG.md updated with a short description of changes (not required for documentation updates)

Accessibility Compliance
You must check off all items in one of the follow two lists:

[ ] There are no changes to UI

or...

[ ] Changes were tested with a Screen Reader (iOS VoiceOver or Android Talkback) and had no issues
[ ] Changes comply with WCAG 2.0 guidelines levels A and AA
[ ] Changes to common UI patterns and interactions comply with WAI-ARIA best practices

Localization

[ ] Changes include a UI text update in the Retail React App (which requires translation)

We also have use-navigation hook when it comes to routing. Is it relevant in this case?

Closing. The PWA Hybrid spike is done. This PR was a POC. The findings will be represented as instructions on the docs site.


FSK mode for RFM95

Hello,
I've been playing with your LoRaLib and it works great. I currently have 2 ESP32 + RFM95W. I'm building with ESP-IDF. I had some difficulties to make your Arduino code work with ESP-IDF but it's finally working.
Now I would like to switch to the FSK modem of the RFM95 but I see it's not supported by your lib. Did you have some difficulties adding FSK support for RFM95 or is it just because it was not on your priority list? If it's the latter, I'm willing to help. Because I really need FSK for RFM95.
It looks feasible, reading the RFM95 datasheet and adapting your FSK code from SX1278 (for example) to RFM95? Do you have any other advices?
Thanks,
Yann.

What gave you the impression FSK is not supported for RFM9x? RFM9x is the exact same chip as SX127x, only packaged by a different company. As such, all features of this library work on both SX127x series as well as on RFM9x.

Well, my bad, you are right. I got confused reading this wiki page: https://github.com/jgromes/LoRaLib/wiki/FSK-Modem
First line says "LoRaLib supports FSK transmissions using SX127x chips." and I thought RFM chips were excluded. But it actually works great!

I amended the wiki page to explicitly mention RFM9x as well as SX127x, but in general, whenever any part of the documentation says "SX127x" it usually means RFM9x too, since there's no essential difference between the two chip series.


Build failed for iOS simulator on 2.0.0-pre3

I'm wont to build my app with TK.CustomMap dependency and getting this error:
clang : error : linker command failed with exit code 1 (use -v to see invocation) [/s/src/MyApp/MyApp.csproj]
 error MT5209 : Native linking error : warning: ignoring file Native References/ClusterKit.framework/ClusterKit, missing required architecture x86_64 in file Native References/ClusterKit.framework/ClusterKit (2 slices) [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKBottomCluster. The symbol '_OBJC_CLASS_$_CKBottomCluster' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKCentroidCluster. The symbol '_OBJC_CLASS_$_CKCentroidCluster' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKCluster. The symbol '_OBJC_CLASS_$_CKCluster' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKClusterAlgorithm. The symbol '_OBJC_CLASS_$_CKClusterAlgorithm' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKClusterAnimation. The symbol '_OBJC_CLASS_$_CKClusterAnimation' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKClusterManager. The symbol '_OBJC_CLASS_$_CKClusterManager' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKGridBasedAlgorithm. The symbol '_OBJC_CLASS_$_CKGridBasedAlgorithm' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKNearestCentroidCluster. The symbol '_OBJC_CLASS_$_CKNearestCentroidCluster' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKNonHierarchicalDistanceBasedAlgorithm. The symbol '_OBJC_CLASS_$_CKNonHierarchicalDistanceBasedAlgorithm' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5211: Native linking failed, undefined Objective-C class: CKQuadTree. The symbol '_OBJC_CLASS_$_CKQuadTree' could not be found in any of the libraries or frameworks linked with your application. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5214: Native linking failed, undefined symbol: _kCKMarginFactorWorld. This symbol was referenced by the managed member Xamarin.iOS.ClusterKit.Constants.kCKMarginFactorWorld. Please verify that all the necessary frameworks have been referenced and native libraries linked. [/s/src/MyApp/MyApp.csproj]
 MTOUCH : error MT5202: Native linking failed. Please review the build log. [/s/src/MyApp/MyApp.csproj]

I probably need to rebuild the clusterkits binding to support x86 arcitecture. Apple does not support it anymore, so you can also just switch you compile target arcitecture.

There is no option to turn off x86 architecture when building for simulation. At least in GUI.

I think, the solution would be to rebuild clusterkits with support of fat frameworks

try not to use the simulator.

Damn. I just stumbled on this issue. And I just can confirm it.
This really hinders productivity, not being able to build and run the app on the simulator.
I'm not interested (yet) in the Cluster functionality (which by the way is enabled by default - I had to disable it), alas I need a couple of fixes that are in that release (MapReady & the offset in FitMapRegionToPositions).
Is there any way around this?


Create new image

Is there a funtion in OSM to add undetected signs?

See https://github.com/openstreetcam/openstreetcam.org/issues/163#issuecomment-397597351:

It's possible to do that on beta.openstreetcam.org. We didn't make that very public as we're still thinking about some moderation steps in case of vandalism. Please play nice :)

Thanks @mds08011!
@Flightlessballer is it ok to close this ticket?


Broken TonalPalette equality operator in dart

In TonalPalette, when one of the palettes was not generated using the _fromHueAndChroma operator, the following code is called:https://github.com/material-foundation/material-color-utilities/blob/dfc3fae69e77b788eaf159f84fe7fc98aa3c4b8d/dart/lib/palettes/tonal_palette.dart#L113 . The issue is that when one of the palettes's cache was not filled, the comparision results in a empty set contains an empty set, for example. This results in operator== resulting in true, always, even when the palettes are different. An testcase for this it https://github.com/kalildev/material_color_utilities_issue .

Thanks for filing an issue and for the test case, I'll get a fix out shortly.


Guide on observations from medical devices

User driven: https://medplum.slack.com/archives/C057GEVQCRE/p1689645187637199
User needs guidance on how to record observations from wearable devices

Document should live in this folder under https://www.medplum.com/docs/charting
Capturing Vital Signs
Vital signs are a group of the most important medical signs that indicate the status of the body’s vital (life-sustaining) functions. Examples are blood pressure, body temperature.
Observation Resource
Vitals are stored as observations, tagged with LOINC, SNOMED, OMOP or similar ontology
Who witness observation
Data can be self reported, captured by a medical professional ("Practitioner")
Medical Devices
Data can come from a Medical Device, include details of Device and DeviceDefinition.  Note that Observation can come from a Device (Observation.device)
Reference Ranges (is this the right term?)
Note that ObservationDefinition can indicate Low, Medium and High ranges.
Sample Data
Blood pressure from a specific device cuff including systolic, diastolic, etc.
ObservationDefinition including model on low, medium, and high blood pressure

In addition...
This profile contains the following qualifying observations (extensions) with associated SNOMED CT value sets:
Body Position - This is used to capture an individual’s body position while taking a blood pressure. Usually “sitting”.
Exercise Association - This is used to capture an individual’s exercise status while taking blood pressure. Usually “at rest”.
Measurement Setting - This is used to capture the location (not body site) where the measurement(s) took place; At home, hospital, clinic, etc.
Sleep Status - This is used to capture whether or not the measurement was taken while the subject was asleep or awake.


Firefox: switch from apt to snap

Closed per successful merge of https://github.com/iancleary/personal-ansible/pull/68


Report bad samples as 400s (ingester)

Part of #72
I don't really like the approach and can't see a not terrible way to do this for the distributor, so I thought I'd put it up for feedback.

Its not clear to me how the new 400 errors get propagated through the distributor?  Doesn't the ingester_client.go code need to change?

Doesn't the ingester_client.go code need to change?

Yeah, reason I put this up is because I couldn't think of a nice way. Will just whack with a hammer until I have something that fits.

Hammer applied. WDYT?

LGTM


Session Tests

Description
Add tests such that the Session class has 100% coverage.
The session class can be found in src/sympc/session/session.py and the tests should be added in the tests folder

I'll take this up :)

I guess we should probably get https://github.com/OpenMined/SyMPC/issues/36 done first? What do you think?

Yep! Ideally, we would do that first and then this, but we can also do this and then that! (and we simply split the tests between Session and SessionManager)


[BUG] Custom Renderer

What happened?
A bug happened!

After following the official sample demo, I found that the method createRootContainer will report an error.
Also tell us, what did you expect to happen?
I want to hook the container inside docment.body or inside any dom (this may be asynchronous).
I would like to use the latest version of the demo example.
Version
Latest
What OS are you seeing the problem on?
No response
What browsers are you seeing the problem on?
No response
Relevant log output
csui.ts:53 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'type')
    at injectAnchor (csui.ts:53:21)
    at createShadowContainer (csui.ts:70:9)
    at async Object.render (main.tsx:95:30)

(OPTIONAL) Contact Details
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems.

Hey there - you will need to pass a valid anchor into the createRootContainer function (per the type error), UNLESS you also override the getRootContainer as well! <- this is indeed a gotcha with the scrappy example :p... (it's overrides both rootContainer + render, and since the overrode rootContainer doesn't care about anchor, I didn't have to pass down anything in the example).


Hoverfly Docker Image in GIT

I am trying to hostspectolabs/hoverflyin Gitlab, then route test automation traffic to hoverfly.
Hoverfly:
  image: spectolabs/hoverfly:latest
  stage: lint
  script:
    - echo "test"
  tags:
    - AWS-EC2-PUBLIC-LINUX

However, after doing this , job does not end in Pipeline. Job gets timeout after 1 hour.
Updating/initializing submodules...
Executing "step_script" stage of the job script
Listen on specific interface                  host=<IP_ADDRESS>
INFO[2023-09-21T02:19:15Z] Using memory backend
INFO[2023-09-21T02:19:15Z] Proxy prepared...                             Destination=. Mode=simulate ProxyPort=8500
INFO[2023-09-21T02:19:15Z] current proxy configuration                   destination=. mode=simulate port=8500
INFO[2023-09-21T02:19:15Z] Admin interface is starting...                AdminPort=8888
INFO[2023-09-21T02:19:15Z] serving proxy

Nothing happens after serving proxy statement. Job gets timeout after 1 hour.

This seems to be an issue related to GitLab job.

Is this issue in Gitlab ?


Selecting camera on a multiple camera setup

Hi,
I have got this working using a single camera, but when I try and launch the second camera, the ros_bridge crashes. This appears to be because the second node is trying to attach to the first camera:
[Info] [Freenect2Impl] enumerating devices...
[Info] [Freenect2Impl] 15 usb devices connected
[Info] [Freenect2Impl] found valid Kinect v2 @4:11 with serial<PHONE_NUMBER>42
[Info] [Freenect2Impl] found valid Kinect v2 @4:14 with serial<PHONE_NUMBER>47
[Info] [Freenect2Impl] found 2 devices
[ INFO] [1505394098.860618578]: [Kinect2Bridge::initDevice] Kinect2 devices found:
[ INFO] [1505394098.860660634]: [Kinect2Bridge::initDevice]   0:<PHONE_NUMBER>42 (selected)
[ INFO] [1505394098.860693823]: [Kinect2Bridge::initDevice]   1:<PHONE_NUMBER>47
[Info] [Freenect2DeviceImpl] opening...
[Info] [Freenect2DeviceImpl] transfer pool sizes rgb: 20*16384 ir: 60*8*33792
[Info] [Freenect2DeviceImpl] opened
[ INFO] [1505394098.955105469]: [Kinect2Bridge::initDevice] starting kinect2
[Info] [Freenect2DeviceImpl] starting...
[Info] [Freenect2DeviceImpl] submitting rgb transfers...
[Info] [Freenect2DeviceImpl] submitting depth transfers...
[Info] [Freenect2DeviceImpl] started
[ INFO] [1505394099.289600988]: [Kinect2Bridge::initDevice] device serial:<PHONE_NUMBER>42
[ INFO] [1505394099.289688259]: [Kinect2Bridge::initDevice] device firmware: 4.0.3916.0
[Info] [Freenect2DeviceImpl] stopping...
[Info] [Freenect2DeviceImpl] canceling rgb transfers...
[Info] [Freenect2DeviceImpl] canceling depth transfers...
[Info] [Freenect2DeviceImpl] stopped

How do I get the package to use the second camera instead?
Thanks.

Never mind, just discovered the sensor argument


Student educational benefits (basic plan)

Question
I remember seeing NetLicensing’s basic plan as a prior benefit of the GitHub Student Developer Pack and was curious if it was still available to get?

Hello @jtmaveryk - please see  Sunset of GitHub Student Developer Pack and Teacher Toolbox #50 announcement.
Please send us the needed data as stated in the "How To Apply" section and we'll enrol your vendor account after the verification.


Excellent useful and helpful project

No issue here, I just wanted to praise you for creating globify!
Been fighting using globs with npm scripts, browserify, and Windows. This project was the saving grace I've been trying to find for over 2 weeks.
While piping would be nice (so I can only use globify and not need to install watchify and browserify), I just wanted to thank you for the project and maintaining it!

awesome!  Thanks!   I should post notes like this on other OSS projects that I use and rely on every day.


Added Opus Wikipedia

Dataset : http://opus.nlpl.eu/Wikipedia.php

merging since the CI is fixed on master


Upgrade to '.NETStandard,Version=v1.3'.

It is possible to have a nuget release for .NETStandard 1.3?

we could try!
Do you need to consume the library from a .netstandard 1.3 / .net 4.6 project?
where do we need to change:
https://github.com/objorke/QuantityTypes/blob/master/Source/QuantityTypes/project.json#L11
https://github.com/objorke/QuantityTypes/blob/master/Source/QuantityTypes/QuantityTypes.xproj#L13
I am confused about the project.json/xproj stuff - waiting for the final solution around this...

Do you need to consume the library from a .netstandard 1.3 / .net 4.6 project?

Yes thx!

With:
"frameworks": {
    "netstandard1.0": {
      "dependencies": {
        "NETStandard.Library": "1.6.0",
        "System.Xml.XmlSerializer": "4.0.11"
      }
    },
    "netstandard1.3": {
      "dependencies": {
        "NETStandard.Library": "1.6.0",
        "System.Xml.XmlSerializer": "4.0.11"
      }
    }
  },

You must have the additional target, no?

Isn't this already supported? We target netstandard1.0.
I tested v3.0.1 with various versions of .NET core and .NET framework and did not see any problems.


Remove change() property callback and make set() get called with unde…

…fined as the oldValue on the initial set.
The rationale behind this is that set() was always getting called with an oldValue that was the same as newValue if the attribute / property existed on the element which is undesirable in most circumstances because you can't do oldValue !== newValue and do something based on that for the initial call to set().
The removal of change() just means that we're leaving the checking of the aforementioned up to the developer. To wrap this themselves they could just do something like:
prop: changeProperty({ change: doSomething });

Where changeProperty might be something like:
function changeProperty (opts) {
  const oldSet = opts.set;
  opts.set = function (elem, data) {
    if (oldSet) {
      oldSet.call(opts, elem, data);
    }
    if (opts.change && data.newValue !== data.oldValue) {
      opts.change(elem, data);
    }
  }
  return opts;
}

Or just have a simple abstraction around it:
function didPropertyChange (data) {
  return data.newValue !== data.oldValue;
}

I think adding in change may have been a mistake because the check is so simple and it was added to facilitate functional UI rendering which can easily be done as part of a separate abstraction for helping with that.

as long as folks are okay with the removal of change, this is a :+1: from me.


Support for ties (~)

Since we don't support breaking at all yet I think this can just be equivalent to \ .

It looks like they were added a while ago:
https://github.com/Khan/KaTeX/blob/master/src/symbols.js#L2115-L2119


VLLM / OpenAI Compatible endpoint support

The current implementation of local means no sharding/tensor parallelism, etc, and refuses to work on my dual 4090 setup. How do I enable multi gpu, or how do I enable a proper system like VLLM to run inferencing?

I am also facing issues with both VLLM and Llama-stack. VLLM seems to allocate too much KV memory and gets OOM errors from CUDA.
Llama-stack seems to rely on models/sku_list.py which hard-codes the model parallelism and does not seem easy to modify. code ref
When I run Llama3.2-90B-Vision-Instruct with two A100 chips it tries with 8:

initializing model parallel with size 8

which results in:

RuntimeError: CUDA error: invalid device ordinal

Is there a way to modify model parallelism as a config item in the llama-stack? Thanks!


[Breaking Change] Change item names to suit rust naming conventions

Note: This is a rebase of #29.
This changes the following names to suit the official rust naming
conventions:

FFT -> Fft
DFT -> Dft
FFTButterfly -> FftButterfly
FFTplanner -> FftPlanner
FFTnum -> FftNum

As this is a breaking change this should probably wait for a 3.0.0
release. Just thought I'd post it so that, if you agree with the
changes, it is ready when time for 3.0.0 comes :) Looks like we
missed 3.0. Here's hoping for the next!

Sorry I skipped this for 3.0 - I made 3.0 for a public dependency upgrade, and I've heard those tend to be painful community-wide, so I wanted as few changes as possible.
To give you an idea of when I might bring this in, I'm waiting for const fn and const generics to land. When they do, I'm going to publish a big overhaul that eliminates a lot of setup time, eliminates unsafe code, and eliminates a lot of the hardcoded butterflies.

Fixed in RustFFT 5.0 Thanks for being patient.
By the way, all development from now on will be happening in https://github.com/ejmahler/RustFFT

Fixed in RustFFT 5.0 Thanks for being patient.
By the way, all development from now on will be happening in https://github.com/ejmahler/RustFFT