Repo sync for protected CLA branch

The pull request is created from master637510842836300001 to master to fix git push error for protected CLA branch

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


[Bug]: Failed request url, 403 Forbidden

What happened?

Expected Result
course will start download
Branch
master/main
What operating systems are you seeing the problem on?
Linux/Unix
Relevant log output
[02:13:55] [udemy-downloader] [__init__:296] INFO: Login Success
[02:13:55] [udemy-downloader] [main:1644] INFO: > Fetching course information, this may take a minute...
[02:13:55] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:13:55] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 0 )...
[02:13:56] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:13:56] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 1 )...
[02:13:57] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:13:57] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 2 )...
[02:13:58] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:13:58] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 3 )...
[02:13:59] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:13:59] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 4 )...
[02:14:00] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:14:00] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 5 )...
[02:14:01] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:14:01] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 6 )...
[02:14:02] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:14:02] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 7 )...
[02:14:03] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:14:03] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 8 )...
[02:14:04] [udemy-downloader] [_get:892] ERROR: Failed request https://www.udemy.com/course/grpc-nodejs/learn/
[02:14:04] [udemy-downloader] [_get:894] ERROR: 403 Forbidden, retrying (attempt 9 )...
Traceback (most recent call last):
  File "main.py", line 1924, in <module>
    main()
  File "main.py", line 1646, in main
    course_id, course_info = udemy._extract_course_info(course_url)
  File "main.py", line 855, in _extract_course_info
    url)
  File "main.py", line 815, in _extract_subscription_course_info
    course_html = self.session._get(url).text
AttributeError: 'NoneType' object has no attribute 'text'

Other information
Udemy Personal Plan

you have to use the selenium branch with -sc option.


added universal build support for macOS

Description
Added support for universal binary builds on macOS in the install-dependencies and rust-bindgen scripts.

In install-dependencies, a get_cmake_platform_options function was added to define x86_64 and arm64 architectures for Darwin (macOS) and return the necessary options for CMAKE.
build_gtest/build_libcheck/build_protobuf functions were updated to include platform compilation options, enabling correct dependency builds for universal binaries.
In rust-bindgen, logic was added to generate universal binaries when specifying native on Darwin (macOS). This performs builds for both x86_64-apple-darwin and aarch64-apple-darwin, followed by merging with lipo.

How to test

Clone the repository and switch to the branch with changes.
Run ./bootstrap.sh native to build the project with universal binaries.
Verify the generated binaries by running lipo -info [path_to_binary], which should display both x86_64 and arm64 architectures.

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[x] Created PR as a draft for initial review.
[x] Added tests to cover changes as needed.
[x] Updated documentation as needed.
[x] Mentioned related Issue in the description if applicable.

Hi @ahaladok, thank you for opening the PR! I think that these changes are not required in the upstream WalletCore repo. They add unnecessary complexity to the build scripts, while you can compile the library on Mac x86-64 machine/runner if needed.


Several SLE tests failing with latest version of nimble-select

🐛 Bug Report
In this Renovate PR, several tests that use select are failing because an unexpected item is selected.
There are also tests failing in app PRs (example)
💻 Repro or Code Sample
Failing unit tests
Failing acceptance tests
🤔 Expected Behavior
Tests pass
😯 Current Behavior
Tests fail with errors like
Expected 'Select workspace' to be 'Default'.
💁 Possible Solution

🔦 Context

🌍 Your Environment

OS & Device: [e.g. MacOS, iOS, Windows, Linux] on [iPhone 7, PC]
Browser [e.g. Microsoft Edge, Google Chrome, Apple Safari, Mozilla FireFox]
Version [e.g. 1.8.0]

This issue was closed by the revert in https://github.com/ni/nimble/pull/2176
The follow-up issue for the reverted behavior to address in the future is https://github.com/ni/nimble/issues/2177


[Colab] ModuleNotFoundError: No module named 'torchvision.models.utils'

Hello, @zachteed, @jiadeng @heilaw & congratulations on your awesome work!
I encounter the following problem when running the demo to predict a SE3 field from a pair of RGB-D frames.

Do you have any idea how could I solve the problem so I can infer on KITTI dataset?
P.S. @troylhy1991, I read on another issue that you were also inferring on KITTI dataset. How did you manage to solve this issue?

[Solved] Replacing torchvision.models.utils with torch.hub in RAFT-3D/raft3d/blocks/resnet.py will solve this issue.


Prefill does not work with React Hook Form

I am using PhoneInput with React Hook Form as follows:

When I am editing my form I want the field to get prepopulated with previous value. For that I am using react hook form's setValue Method:

If my previous value is Indian phone number it gets prepopulated but if its other than Indian phone number it does not get prepopulated.
Please provide solution for this. Thanks!

This is an issue with the way you're setting defaults on react-hook-form rather than an issue with this library.
The Controller is likely a nested child child but the nested child Controller registers the field after you set the default values.
Instead, change defaultValues to use the response data rather than trying to set the value manually before the field is registered. See this SO flow post here for a more detailed explanation.

@Eunanibus I will try that. Thanks!

I will close this issue, feel free to reopen it if anything is wrong.


npm packages should be ES5

This is a (multiple allowed):

[ ] bug

[X] enhancement

[X] feature-discussion (RFC)

Framework7 Version: 2.0.7

Platform and Target: iOS 9.3.5

What you did
Tried to run Framework7-Vue project on an old iPhone 4S (with iOS 9.3.5).
Unfortunately, we have the most expensive iPhone on the world here in Brazil and a bunch of people who cares about status, so we have a huge old iPhones market do deal with =\
Expected Behavior
Using babel to transform what doesn't work on iOS 9 should only be on my code. A simple transform-es2015-constants and transform-es2015-arrow-functions should take care of it.
Actual Behavior
As /node_modules/template7/dist/template7.esm.js (and also Dom7) were not compiled to ES5, and babel automatically ignores node_modules folder, the consts and arrow functions on those files prevented my app to run on such old iPhone.
Actual discussion
It would be possible to compile Dom7, F7 and any other dependencies to dist using ES5?
Or at least those silly things that some "not-so-modern-but-not-as-bad-as-internet-exploder" browsers don't understand (like const vars and arrow => functions)?

Solved with
.babelrc
{
    "presets":
    [
        [
            "env",
            {
                "modules": false,
                "targets":
                {
                    "browsers":
                    [
                        "last 2 versions",
                        "safari >= 7",
                        "not ie <= 8"
                    ]
                }
            }
        ],
        "stage-2"
    ],
    "plugins":
    [
        "transform-vue-jsx",
        "transform-runtime",
        "transform-object-rest-spread",
        "transform-class-properties",
        "transform-decorators-legacy"
    ],
    "comments": false,
    "env":
    {
        "test":
        {
            "presets":
            [
                "env",
                "stage-2"
            ],
            "plugins":
            [
                "istanbul"
            ]
        }
    }
}

webpack config
{
                test: /\.js$/,
                loader: "babel-loader",
                include:
                [
                    resolve("src"),
                    resolve("test"),
                    resolve("node_modules/framework7/dist"),
                    resolve("node_modules/template7/dist"),
                    resolve("node_modules/dom7/dist"),
                    resolve("node_modules/framework7-vue/dist"),
                ]
            },

Now working on iOS 9.2 and IE 11 (with Promises polyfill)


DC-6423 :Util class to generate V4 format from the given V3 message

@satyajosyula2020 from the title of the PR, it looks like this utility is designed to convert a V3 to a V4 secure message. If this understanding is correct, could you name some of the variables/methods/classes as such so that it is obvious this is what's happening? It is probably obvious to you, but I am not as familiar with this area so it would help someone like me :)
Thanks

@satyajosyula2020 from the title of the PR, it looks like this utility is designed to convert a V3 to a V4 secure message. If this understanding is correct, could you name some of the variables/methods/classes as such so that it is obvious this is what's happening? It is probably obvious to you, but I am not as familiar with this area so it would help someone like me :) Thanks

@satyajosyula2020 from the title of the PR, it looks like this utility is designed to convert a V3 to a V4 secure message. If this understanding is correct, could you name some of the variables/methods/classes as such so that it is obvious this is what's happening? It is probably obvious to you, but I am not as familiar with this area so it would help someone like me :) Thanks

I guess its obvious, but anyway I will update few names and also adding a test case. This code is actually lifted up from EMA to make it common to 'message' thanks


[BUG] Use IndicesCreateRequest in example doc

What is the bug?
I'm pretty sure that IndicesCreateRequest should be used in the "create index" example where CreateRequest is currently used.
How can one reproduce the bug?
Following the example and using CreateRequest results in an error if you're trying to create an index.

Hey @forstmeier, I'm assuming this is about one of the client pages? Can you clarify which specific client you're referring to?

Hi @keithhc2, yes, it is. It's in the Go client example code where it says // Create an index with non-default settings..

Thanks, done - https://github.com/opensearch-project/documentation-website/pull/320


xSQLServerSetup: fixes and enhancements for supporting clustered installations

This pull request includes multiple fixes and enhancements to allow for clustered installations (currently only fully tested the InstallFailoverCluster action, but all unit tests for others were successful). The AddNode action is the only one I know will not work due to some complexities with checking desired state. I'll open a separate issue for that.
This Pull Request (PR) fixes the following issues:
Fixes #362
Fixes #353
Fixes #352
Fixes #345
Fixes #344

[x ] Change details added to Unreleased section of CHANGELOG.md?
[x ] Added/updated documentation, comment-based help and descriptions in .schema.mof files where appropriate?
[x] Examples appropriately updated?
[x ] New/changed code adheres to Style Guidelines?
[x ] Unit and (optional) Integration tests created/updated where possible?

This change is

Hi @yardbirdsax, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

Hmmm... I watched the AppVeyor results and some of the unit tests are failing because it is not finding the "Get-ClusterSharedVolume" cmdlet. They all passed locally, is there something I need to put in the resource to make sure it pulls in the module (or can I not use the Failover Cluster cmdlets)?

Hi, I am closing and re-opening this PR to bump the CLA bot. Sorry for the inconvenience!

Hi @yardbirdsax, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, MSBOT;

You need to make a stub (fake version) of the Get-ClusterSharedVolume, like there are Stubs for SQLPS module
See here: https://github.com/PowerShell/xSQLServer/tree/dev/Tests/Unit/Stubs
You should be able to create the stubs from the original module with this https://github.com/PowerShell/xSQLServer/blob/dev/Tests/Unit/Stubs/Write-ModuleStubFile.ps1
In the tests you import the stub module.

Thanks @johlju . Thinking about it some more, it might be a good idea not to rely on the presence of the FailoverClustering module at all if possible, since it might not be present on all servers this resource will be used on. I'm going to see if I can get it working with just the CIM cmdlets like the other cluster related functions are.

If the cmdlet is only call when doing a clustered install (and not called when doing a normal single server installs), and the PowerShell module is installed as part of the FailoverClustering service (part of or as and add-on), I don't see a problem making that a requirement. Just specify that it is a requirement in the README.md when doing clustered installs. Also we need to add that requirement to the example file(s).

Or if it is used for a certain function for the cluster install (Shared Volumes), we could make it a requirement only for that function. If it is not enabled, then that function is not available during the cluster install. And it should write a verbose message saying that the function is not available because it is missing dependency or something. :)

Too late @johlju, I already fixed it. :) Didn't want to say anything until I saw the big green check mark on the AppVeyor build, lest I jinx myself.
Like I said, this is my first go-round, so feel free to hammer on whatever you see. Thanks!

Great! Works that way too 😉
I will review this, but I'm afraid it's gonna take a few days to get to this one. I try to do them in order first in-first reviewed. :) But I'm hoping to get thru the lot during the weekend.

@yardbirdsax Btw awesome work! 😄
If anyone want to try out doing a review then feel free to review! I will go thru it once either way (my obligation as a maintainer), but would welcome the help! 😄

Again, impressive work! A lot of style comments. Just easy fixes.

Reviewed 1 of 1 files at r4, 2 of 2 files at r5.
Review status: all files reviewed at latest revision, 51 unresolved discussions.

CHANGELOG.md, line 8 at r5 (raw file):

  - xSQLServerRole now correctly reports that the desired state is present when the login is already a member of the server roles
- Changes to xSQLServerSetup
  - xSQLServerSetup should now function correctly for the InstallFailoverCluster action, and also supports cluster shared volumes. Note that the AddNode action is not currently working.

Could you please submit an issue for that AddNode should be implemented.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 796 at r5 (raw file):

        $setupArguments += @{
            FailoverClusterNetworkName = $FailoverClusterNetworkName
        };

You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):

        # Get a required lising of drives based on user parameters
        $requiredDrives = Get-Variable -Name 'SQL*Dir' -ValueOnly | Where-Object { -not [String]::IsNullOrEmpty($_) } | Sort-Object -Unique | Add-Member -MemberType NoteProperty -Name IsMapped -Value $false -PassThru;

Previously Split-Path -Qualifier was used to get the drive letters from the Path, i.e. SQLUserDBDir = 'E:\SQL\Data'. That is not necessary anymore?
You can remove the ; at the end.
Would it be better to use PSBoundParameters instead of Get-Variable?

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):

        # Get a required lising of drives based on user parameters
        $requiredDrives = Get-Variable -Name 'SQL*Dir' -ValueOnly | Where-Object { -not [String]::IsNullOrEmpty($_) } | Sort-Object -Unique | Add-Member -MemberType NoteProperty -Name IsMapped -Value $false -PassThru;

Question: Since it looks for the variables 'Sql*Dir', does that mean that those parameters must be assigned during a cluster install? What happens when the user do not add those parameters? Something we should mention in the README.md?

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 810 at r5 (raw file):

        $availableStorage = Get-CimInstance -Namespace 'root/MSCluster' -ClassName 'MSCluster_ResourceGroup' -Filter "Name = 'Available Storage'" |
                                Get-CimAssociatedInstance -Association MSCluster_ResourceGroupToResource -ResultClassName MSCluster_Resource | `
                                Add-Member -MemberType NoteProperty -Name "IsPossibleOwner" -Value $false -PassThru;

Change "IsPossibleOwner" to 'IsPossibleOwner' (single quotes)
You can remove ; at the end.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 820 at r5 (raw file):

            if ($possibleOwners -icontains $env:COMPUTERNAME)
            {

Please remove blank line

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 821 at r5 (raw file):

            {

                $diskResource.IsPossibleOwner = $true;

You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 829 at r5 (raw file):

            foreach ($diskResource in ($availableStorage | Where-Object {$_.IsPossibleOwner -eq $true}))
            {
                $partitions = $diskResource | Get-CimAssociatedInstance -ResultClassName 'MSCluster_DiskPartition' | Select-Object -ExpandProperty Path;

You can remove ; at the end.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 834 at r5 (raw file):

                    if ($requiredDrive -imatch $partition.Replace('\','\\'))
                    {
                        $requiredDrive.IsMapped = $true;

You can remove ; at the end for this rown, and the two next.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 838 at r5 (raw file):

                        break;
                    }
                    if ($requiredDrive.IsMapped)

Add blank line before this one.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 840 at r5 (raw file):

                    if ($requiredDrive.IsMapped)
                    {
                        break;

You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 843 at r5 (raw file):

                    }
                }
                if ($requiredDrive.IsMapped)

Add blank line before this one.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 845 at r5 (raw file):

                if ($requiredDrive.IsMapped)
                {
                    break;

You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 851 at r5 (raw file):

        # Now we handle cluster shared volumes
        $clusterSharedVolumes = Get-CimInstance -ClassName "MSCluster_ClusterSharedVolume" -Namespace "root/MSCluster";

Change the strings to use single quotes.
You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 859 at r5 (raw file):

                if ($requiredDrive -imatch $clusterSharedVolume.Name.Replace('\','\\'))
                {
                    $diskName = Get-CimInstance -ClassName "MSCluster_ClusterSharedVolumeToResource" -Namespace "root/MSCluster" | `

Change the strings to use single quotes.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 862 at r5 (raw file):

                        Where-Object {$_.GroupComponent.Name -eq $clusterSharedVolume.Name} | `
                        Select-Object -ExpandProperty PartComponent | `
                        Select-Object -ExpandProperty Name;

You can remove ; at the end, for this and the two next rows

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 873 at r5 (raw file):

        # Ensure we mapped all required drives
        $unMappedRequiredDrives = $requiredDrives | Where-Object {$_.IsMapped -eq $false} | Measure-Object;

You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 953 at r5 (raw file):

    }

    if ($Action -eq "AddNode")

Change the string to use single quotes.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1126 at r5 (raw file):

$processArgs

Please change the variable $processArgs to $processArguments

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1129 at r5 (raw file):

        Path = $pathToSetupExecutable
        Arguments = $arguments
    };

You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1130 at r5 (raw file):

        Arguments = $arguments
    };
    if ($Action -in @('InstallFailoverCluster','AddNode'))

Please add a blank line before this one.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1132 at r5 (raw file):

    if ($Action -in @('InstallFailoverCluster','AddNode'))
    {
        $processArgs.Add('Credential',$SetupCredential);

Please change the variable $processArgs to $processArguments
You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1134 at r5 (raw file):

        $processArgs.Add('Credential',$SetupCredential);
    }
    $process = StartWin32Process @processArgs;

Please add a blank line before this one.
Please change the variable @processArgs to @processArguments
You can remove ; at the end

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1453 at r5 (raw file):

    }

    $boundParams = $PSBoundParameters;

You can remove ; at the end
Please change $boundParams to $boundParameters

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1482 at r5 (raw file):

        $result = $true

        $boundParams.Keys | Where-Object {$_ -imatch "^FailoverCluster"} | ForEach-Object {

Please change $boundParams to $boundParameters

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1485 at r5 (raw file):

            $variableName = $_

            if ($getTargetResourceResult.$variableName -ne $boundParams[$variableName]) {

Please change $boundParams to $boundParameters

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1486 at r5 (raw file):

            if ($getTargetResourceResult.$variableName -ne $boundParams[$variableName]) {
                New-VerboseMessage -Message "$variableName '$($boundParams[$variableName])' is not in the desired state for this cluster."

Please change $boundParams to $boundParameters

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 105 at r5 (raw file):

        $mockSqlServiceAccount = 'COMPANY\SqlAccount'
        $mockSqlServicePassword = 'Sqls3v!c3P@ssw0rd';
        $mockSQLServiceCredential = new-object System.Management.Automation.PSCredential($mockSqlServiceAccount,($mockSQLServicePassword | Convertto-SecureString -AsPlainText -Force));

New-Object (upper 'N' and 'O')
ConvertTo-SecureString (upper 'T')
You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 108 at r5 (raw file):

        $mockAgentServiceAccount = 'COMPANY\AgentAccount'
        $mockAgentServicePassword = 'Ag3ntP@ssw0rd';
        $mockSQLAgentCredential = new-object System.Management.Automation.PSCredential($mockAgentServiceAccount,($mockAgentServicePassword | Convertto-SecureString -AsPlainText -Force));

New-Object (upper 'N' and 'O')
ConvertTo-SecureString (upper 'T')
You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 612 at r5 (raw file):

                (
                    New-Object Microsoft.Management.Infrastructure.CimInstance 'MSCluster_ClusterSharedVolume', 'root/MSCluster' |
                        Add-Member -MemberType NoteProperty -Name "Name" -Value $mockCSVClusterDiskMap["UserData"].Path -PassThru -Force

Please use single quotes for the strings, here and the next 4 rows below

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 630 at r5 (raw file):

                        Add-Member -MemberType NoteProperty -Name "Name" -Value $mockCSVClusterDiskMap["Backup"].Path -PassThru -Force
                )
            );

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 637 at r5 (raw file):

                (
                    New-Object Microsoft.Management.Infrastructure.CimInstance 'MSCluster_ClusterSharedVolume', 'root/MSCluster' |
                        Add-Member -MemberType NoteProperty -Name GroupComponent -Value (New-Object PSObject -Property @{Name=$mockCSVClusterDiskMap["UserData"].Path}) -PassThru -Force |

Please use single quotes for the strings, here and the next 9 rows below

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 660 at r5 (raw file):

                        Add-Member -MemberType NoteProperty -Name PartComponent -Value (New-Object PSObject -Property @{Name=$mockCSVClusterDiskMap["Backup"].Name}) -PassThru -Force
                )
            );

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 2395 at r5 (raw file):

                    }

                    New-Variable -Name "FailoverClusterDisks" -Value $mockClusterDiskMap["UserData"];

Please use single quotes for the strings
You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3163 at r5 (raw file):

                        }

                        $testParameters.Remove("Features");

Please use single quotes for the strings.  Same for the next 4 rows.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3220 at r5 (raw file):

                    It 'Should pass the SetupCredential object to the StartWin32Process function' {
                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null;

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3221 at r5 (raw file):

                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null;
                            return "Process started.";

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3224 at r5 (raw file):

                        }

                        Mock -CommandName StartWin32Process -MockWith $mockStartWin32Process_SetupCredential;

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3301 at r5 (raw file):

                    It 'Should pass the SetupCredential object to the StartWin32Process function' {
                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null;

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3302 at r5 (raw file):

                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null;
                            return "Process started.";

You can remove ; at the end

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3421 at r5 (raw file):

                    It 'Should pass proper parameters to setup when Cluster Shared volumes are specified' {
                        $csvTestParameters = $testParameters.Clone();

You can remove ; at the end, same for the 4 rows below

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3423 at r5 (raw file):

                        $csvTestParameters = $testParameters.Clone();

                        $csvTestParameters["SQLUserDBDir"] = $mockCSVClusterDiskMap["UserData"].Path;

Please use single quotes for the strings. Same for next 3 rows.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3436 at r5 (raw file):

                            InstanceName = 'MSSQLSERVER'
                            Features = 'SQLEngine'
                            FailoverClusterDisks = "$($mockCSVClusterDiskMap["UserData"].Name); $($mockCSVClusterDiskMap["UserLogs"].Name); $($mockCSVClusterDiskMap["TempDBData"].Name); $($mockCSVClusterDiskMap["TempDBLogs"].Name)"

Please use single quotes for the strings

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3440 at r5 (raw file):

                            FailoverClusterGroup = 'SQL Server (MSSQLSERVER)'
                            FailoverClusterNetworkName = $mockDefaultInstance_FailoverClusterNetworkName
                            SQLUserDBDir = $mockCSVClusterDiskMap["UserData"].Path

Please use single quotes for the strings. Same for the next 3 rows.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3452 at r5 (raw file):

                        $csvTestParameters = $testParameters.Clone();

                        $csvTestParameters["SQLUserDBDir"] = $mockCSVClusterDiskMap["UserData"].Path + '\Data';

Please use single quotes for the strings
You can remove ; at the end
same for the 4 rows below

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3466 at r5 (raw file):

                            InstanceName = 'MSSQLSERVER'
                            Features = 'SQLEngine'
                            FailoverClusterDisks = "$($mockCSVClusterDiskMap["Backup"].Name); $($mockCSVClusterDiskMap["UserData"].Name)"

Please use single quotes for the strings

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3470 at r5 (raw file):

                            FailoverClusterGroup = 'SQL Server (MSSQLSERVER)'
                            FailoverClusterNetworkName = $mockDefaultInstance_FailoverClusterNetworkName
                            SQLUserDBDir = "$($mockCSVClusterDiskMap["UserData"].Path)\Data"

Please use single quotes for the strings. Same for the next 4 rows.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3479 at r5 (raw file):

                        { Set-TargetResource @csvTestParameters } | Should Not Throw
                    }

Please remove two blank lines

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3482 at r5 (raw file):

                }

Please remove blank line

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3532 at r5 (raw file):

                            ($Namespace -eq 'root/MSCluster') -and ($ClassName -eq 'MSCluster_Network') -and ($Filter -eq 'Role >= 2')
                        } -Verifiable

Please remove blank line

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3620 at r5 (raw file):

                            $ClassName -eq 'MSCluster_ClusterSharedVolumeToResource'
                        } -Verifiable

Please remove blank line

Comments from Reviewable

Review status: all files reviewed at latest revision, 51 unresolved discussions.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 796 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Previously Split-Path -Qualifier was used to get the drive letters from the Path, i.e. SQLUserDBDir = 'E:\SQL\Data'. That is not necessary anymore?
You can remove the ; at the end.
Would it be better to use PSBoundParameters instead of Get-Variable?

Correct, the Split-Path isn't necessary any more since we're matching based on the drive path pattern. E.g., if the path specified matches either the mounted drives folder (for mount points) or the CSV path (for cluster shared volumes), then grab that disk. The idea here was to have allow for the use of mount points and not just stand-alone drive letters, plus have a consistent way of matching. Ideally I would have liked to have collapsed the matching logic to one loop, but I wanted to get this done and this was the minimum changes to get it passing.
Come to think of it there is a weakness in my logic which I'll open an issue for, but I think it's still an improvement over the original method.
I agree that using PSBoundParameters would be a better approach. I actually made that change in another spot where it was causing problems. That being said that particular part wasn't changed because I didn't want to make more changes than required. I'm happy to open an issue to retrofit the module to replace the variable usage, I can probably even tackle it if you want.
I also removed the semicolon.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Question: Since it looks for the variables 'Sql*Dir', does that mean that those parameters must be assigned during a cluster install? What happens when the user do not add those parameters? Something we should mention in the README.md?

Correct, there are certain parameters that need to be specified when doing clustered versus non clustered installs. I'm thinking a README update and eventually the module should be updated to throw an error based on differing parameter needs. Let me know if you want me to update the README for this pull or if I should open an issue.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 810 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Change "IsPossibleOwner" to 'IsPossibleOwner' (single quotes)
You can remove ; at the end.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 820 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please remove blank line

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 821 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 829 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 834 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end for this rown, and the two next.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 838 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Add blank line before this one.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 843 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Add blank line before this one.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 845 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 851 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Change the strings to use single quotes.
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 859 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Change the strings to use single quotes.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 862 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end, for this and the two next rows

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 953 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Change the string to use single quotes.

Done.

Comments from Reviewable

@johlju Thanks! I will try and knock a few of these out each day.

Sounds good!

Reviewed 1 of 1 files at r6.
Review status: all files reviewed at latest revision, 38 unresolved discussions.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):
Previously, yardbirdsax wrote…
Correct, the Split-Path isn't necessary any more since we're matching based on the drive path pattern. E.g., if the path specified matches either the mounted drives folder (for mount points) or the CSV path (for cluster shared volumes), then grab that disk. The idea here was to have allow for the use of mount points and not just stand-alone drive letters, plus have a consistent way of matching. Ideally I would have liked to have collapsed the matching logic to one loop, but I wanted to get this done and this was the minimum changes to get it passing.
Come to think of it there is a weakness in my logic which I'll open an issue for, but I think it's still an improvement over the original method.
I agree that using PSBoundParameters would be a better approach. I actually made that change in another spot where it was causing problems. That being said that particular part wasn't changed because I didn't want to make more changes than required. I'm happy to open an issue to retrofit the module to replace the variable usage, I can probably even tackle it if you want.
I also removed the semicolon.

You can open an issue for the PSBoundParameters to be replaced. You don't have to fix it in this PR if you feel you want to limit the changes in this PR. You can choose to fix it in a later PR or let someone else fix it.
Also open an issue for the weakness you found. :)
I like that you solved so that mount points can be used! That was actually something I thought of when writing the comment, but forgot to ask.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):
Previously, yardbirdsax wrote…
Correct, there are certain parameters that need to be specified when doing clustered versus non clustered installs. I'm thinking a README update and eventually the module should be updated to throw an error based on differing parameter needs. Let me know if you want me to update the README for this pull or if I should open an issue.

Both preferably, if you don't mind. :)
In the README.md, change to add something like "This parameter is mandatory when doing a clustered install." for each parameter that is "mandatory".
Then add an issue so that logic should be implemented to throw if those "mandatory" parameters are not set.

Comments from Reviewable

@johlju Sure thing. It may take me a bit to do the throwing error part as I'll have to write some new unit tests and go through the installation documentation to make sure it's testing for all the right parameters.

@yardbirdsax I think we should submit an issue for the throwing and making test for it. For now I am happy if you just add to the description that they are mandatory when doing a cluster install.
The follwing parameters seems to be affected by the logic as far as I can see.

I sent the comment before I was finished writing, I must have pressed some strange combination of keys.
SQLUserDBDir
SQLUserDBLogDir
SQLTempDBDir
SQLTempDBLogDir
SQLBackupDir
So I suggest that you add an issue for the throwing and testing of the throwing, and that you just add to the parameter description in the README.md, and the schema.mof, that these parameters below are mandatory when doing cluster install.
Would that work? Or are you thinking something else? My thought is to limit the scope of this PR so we can get it merged.

That works for me, I can update the README and open an issue for the error throwing. I hope to have these last changes done in a few days time.

@johlju Since this is my first time and I'm not a Git guru, do you mind listing out the steps I need to do to properly rebase my branch with the changes that have happened since then? Don't want to muck stuff up. :)

Review status: all files reviewed at latest revision, 38 unresolved discussions, some commit checks failed.

CHANGELOG.md, line 8 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Could you please submit an issue for that AddNode should be implemented.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can open an issue for the PSBoundParameters to be replaced. You don't have to fix it in this PR if you feel you want to limit the changes in this PR. You can choose to fix it in a later PR or let someone else fix it.
Also open an issue for the weakness you found. :)
I like that you solved so that mount points can be used! That was actually something I thought of when writing the comment, but forgot to ask.

Done, issue #394 submitted.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 805 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Both preferably, if you don't mind. :)
In the README.md, change to add something like "This parameter is mandatory when doing a clustered install." for each parameter that is "mandatory".
Then add an issue so that logic should be implemented to throw if those "mandatory" parameters are not set.

Done, #395 submitted.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 840 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 873 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1126 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…

$processArgs

Please change the variable $processArgs to $processArguments

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1129 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1130 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please add a blank line before this one.

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1132 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please change the variable $processArgs to $processArguments
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1134 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please add a blank line before this one.
Please change the variable @processArgs to @processArguments
You can remove ; at the end

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1453 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end
Please change $boundParams to $boundParameters

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1482 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please change $boundParams to $boundParameters

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1485 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please change $boundParams to $boundParameters

Done.

DSCResources/MSFT_xSQLServerSetup/MSFT_xSQLServerSetup.psm1, line 1486 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please change $boundParams to $boundParameters

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 105 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
New-Object (upper 'N' and 'O')
ConvertTo-SecureString (upper 'T')
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 108 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
New-Object (upper 'N' and 'O')
ConvertTo-SecureString (upper 'T')
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 612 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings, here and the next 4 rows below

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 630 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 637 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings, here and the next 9 rows below

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 660 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 2395 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3163 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings.  Same for the next 4 rows.

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3220 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3221 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3224 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3301 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3302 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3421 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove ; at the end, same for the 4 rows below

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3423 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings. Same for next 3 rows.

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3436 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3440 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings. Same for the next 3 rows.

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3452 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings
You can remove ; at the end
same for the 4 rows below

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3466 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3470 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please use single quotes for the strings. Same for the next 4 rows.

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3479 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please remove two blank lines

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3482 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please remove blank line

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3532 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please remove blank line

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3620 at r5 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Please remove blank line

Done.

Comments from Reviewable

Trying to finish this up today, but for some reason I'm getting a bunch of test failures. I'm working on a different machine so it might be something with that. Anyway, just wanted you to know I didn't forget about this! Hopefully can get this resolved and cleaned up today.

I can help you loo at it tomorrow if you haven't sorted it until then.
Did you get the rebase correct? Or do you still want the steps?
Sorry for responding so slow :/

I figured out the test problem, there were some missing mocks that didn't show up on my other machine because of how I had SQL installed. I think I got the rebase right, we'll see as I just pushed up all the fixes again. Fingers crossed! :)

Great! I review this tomorrow then! :)

Rats, it seems like something didn't work quite right.  Silly git newbie I am.

No worries.  We have all been there, and I'm still learning as well :)
Since you are working in the dev branch of your fork these are the steps. Let me know if it doesn't work and I see what is wrong.
Run git remote -v to see which remote name points to PowerShell repo and which point to your fork. Below 'my' equals your fork, and 'origin' equals PowerShell repo.
git checkout dev
git fetch origin dev
git rebase origin dev
git push my dev --force

Thanks! I think I got it right this time. Foolish me tried to use the GUI to do it. whacks head Fingers crossed that the AppVeyor build passes.

I have not dared to use GUI yet (in VS Code). Feels like I don't have control. ;)
Great that you got it working!

Codecov Report

Merging #363 into dev will increase coverage by <1%.
The diff coverage is 100%.

@@         Coverage Diff          @@
##            dev   #363    +/-   ##
====================================
+ Coverage    63%    64%   +<1%
====================================
  Files        31     31
  Lines      3092   3125    +33
====================================
+ Hits       1978   2012    +34
+ Misses     1114   1113     -1

Continue to review full report at Codecov.

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

Review status: 0 of 4 files reviewed at latest revision, 40 unresolved discussions.

CHANGELOG.md, line 14 at r8 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
You can remove this line. It's already a row "Changes to xSQLServerSetup" a little bit above.

Done.

README.md, line 874 at r8 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Strange.. I have to test that tomorrow then. Was hoping it would show there.

It was my silly computer. Doggone spell check plugin just made vscode sit and spin; once I disabled that it worked right away. This is fixed.

Comments from Reviewable

Just a few small changes then this is good to go!

Reviewed 2 of 3 files at r8, 1 of 1 files at r9, 1 of 1 files at r10.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

README.md, line 871 at r10 (raw file):

* **[String] FailoverClusterNetworkName** _(Write)_: Host name to be assigned to the clustered SQL Server instance.

##### Required Parameters

Could you move this section up to the Requirements section instead? (above the parameters)

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3231 at r10 (raw file):

                    It 'Should pass the SetupCredential object to the StartWin32Process function' {
                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null

Can we change to '| Should Not BeNullOrEmpty' ?

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3232 at r10 (raw file):

                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null
                            return "Process started."

Change to single quotes.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3322 at r10 (raw file):

                    It 'Should pass the SetupCredential object to the StartWin32Process function' {
                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null

Can we change to '| Should Not BeNullOrEmpty' ?

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3323 at r10 (raw file):

                        $mockStartWin32Process_SetupCredential = {
                            $Credential | Should Not Be $null
                            return "Process started."

Change to single quotes

Comments from Reviewable

Review status: all files reviewed at latest revision, 5 unresolved discussions.

README.md, line 871 at r10 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Could you move this section up to the Requirements section instead? (above the parameters)

Done. I also added a note in the Parameters section that the 'AddNode' action doesn't currently work, just so folks don't use it and have strange results.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3231 at r10 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Can we change to '| Should Not BeNullOrEmpty' ?

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3232 at r10 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Change to single quotes.

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3322 at r10 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Can we change to '| Should Not BeNullOrEmpty' ?

Done.

Tests/Unit/MSFT_xSQLServerSetup.Tests.ps1, line 3323 at r10 (raw file):
Previously, johlju (Johan Ljunggren) wrote…
Change to single quotes

Done.

Comments from Reviewable

Reviewed 2 of 2 files at r11.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Documentation versions (stable & dev)

So far, the gh-pages branch only generates the dev documentation. It's needed the documentation for stable and specific versions.

Solved at pull request #114


Reset

A Question:
How can I reset (or delete) the Wifi-credentials? For test purposes or to connect to another wifi-network when the first saved network is still available?

I'll leave this open as adding a reset method would be a good enhancement.

@BramWerbrouck I've added this - the application front end now has a "Reset" button, there's a /reset route in the application (see main.py) and a new template file to tell the user that the device has been reset (app_templates/reset.html).


i18n(zh-cn): translate from-vuepress.mdx

What kind of changes does this PR include?

Minor content fixes (broken links, typos, etc.)
New or updated content
Translated content
Changes to the docs site code
Something else!

Description

Closes #
What does this PR change? Give us a brief description.
Did you change something visual? A before/after screenshot can be helpful.

Thank you for your contribution. the description of the PR needs to be modified a bit, select the category you are modifying this time, and the description of what you are modifying.
For example:
What kind of changes does this PR include?
Translated content
Description
translate from-vuepress.mdx


Can I make a 1vs1 game with lidgren library ?

I can make multiplayer game but I need multi 1vs1 games :)
Like chess for example

Yes you may. But you might need write some mechanism for control of game's rooms with parameters something like "maximum players per room".

Hello,
you may set the MaximumConnections configuration if using a server; or enable de ConnectionApproval event to accept/deny connection requests accordingly to some rule.
Check NetPeerConfiguration.cs for more info about this settings.
Regards,


v3.2.9 Cherry-pick

Planning to release v3.2.9 end of today. Please select your issues which you want to include in this release

[ ] Todor Todorov: fix: Support for custom HTTP headers. Fixes #7985 (#8004) fe8ac30b0
[x] Saravanan Balasubramanian: fix: panic on synchronization if workflow has mutex and semaphore (#8025) 9655a8348
[ ] Shyukri Shyukriev: fix: Fix/client go/releaseoncancel. Fixes  #7613 (#8020) 957330301
[ ] Alex Collins: fix!: Document workflowtaskset breaking change. Fixes #8013 (#8015) c5c3b3134
[ ] Niklas Hansson: feat: fix path for plugin example (#8014) 56dc11cef
[ ] Alex Collins: fix: Reduce agent permissions. Fixes #7986 (#7987) 06d4bf76f
[ ] Alex Collins: fix: Re-factor assessNodeStatus. Fixes #7996 (#7998) 20f7516f9
[ ] Alex Collins: feat: Support workflow.parameters in workflow meta-data. Fixes #3434 (#7711) 7e34ac513
[ ] Niklas Hansson: docs: Add debug pause docs. Fixes #7684 (#7965) 3aae63b19
[ ] Alex Collins: fix: Generate SDKS (#7989) 7c0e28901
[ ] Alex Collins: chore: Upgrade to Kubernetes v0.23. Fixes #6750 (#7832) 6076524cd
[ ] Alex Collins: feat: Reduce agent pod permissions. Fixes #7914 (#7915) 857768949
[ ] Alex Collins: fix: Report container, plugin and HTTP  progress. Fixes #7918 (#7960) d57fd0ff4
[ ] Alex Collins: chore: Move plugins to argolabs. Fixes #7959 (#7961) 4e804388e
[x] Markus Lippert: fix: Fix broken Windows build (#7933) ad312674a
[ ] Alex Collins: docs: Update mentors list. Fixes #7882 (#7889) 6aeaebfd8
[ ] Alex Collins: fix: Fix rowserrcheck lint errors (#7924) 5b6bfb6d3
[ ] Dillen Padhiar: feat: Support insecureSkipVerify for HTTP templates. Fixes #7790 (#7885) ce00cd8ed
[ ] Alex Collins: feat: Update new version modal for v3.3. Fixes #7639 (#7707) 11890b4cc
[ ] Baz Chalk: fix: Add license to python sdk. Fixes #7881 (#7883) 3524615b8
[ ] Lukasz Stolcman: fix: Increase padding between elements in workflow template creator. Fixes #7309 (#7420) 80e7a27bf
[ ] Oleg: fix: trim spaces while parse realtime metrics value. Fixes #7819 (#7856) c0c24d24e
[ ] Ken Kaizu: fix: workflow-node-info long attribute message cannot be wrapped in the ui (#7876) bb8d2858d
[ ] Zhong Dai: docs: Fixed the typo in the document (#7869) c3f80a3d6
[ ] Niklas Hansson: feat: add container-set retry strategy.  Fixes #7290 (#7377) 808c561f1
[ ] Tianchu Zhao: fix(cli): fix typo in argo cron error messages (#7875) 31cc8bf98
[ ] Rohan Kumar: fix: added priorityclass to workflow-controller. Fixes #7733 (#7859) 87cb15591
[ ] Jin Dong: fix: Fix go-jose dep. Fixes #7814 (#7874) 69c5bc79f
[ ] Vrukshali Torawane: fix: Add env to argo-server deployment manifest. Fixes #7285 (#7852) 28412ef7c
[ ] Isitha Subasinghe: feat: remove pod workers. Fixes #4090 (#7837) fce82d572
[ ] Doğukan Tuna: fix(ui): unauthorized login screen redirection to token creation docs (#7846) 938fde967
[ ] Dillen Padhiar: fix: submitting Workflow from WorkflowTemplate will set correct serviceAccount and securityContext. Fixes #7726 (#7805) 1113f70fa
[ ] Alex Collins: feat: Surface container and template name in emissary error message. Fixes #7780 (#7807) 1a1cc9a9b
[ ] Alex Collins: chore: Correct VERSION in release job. Fixes #7766 (#7784) ece61595b
[ ] Alex Collins: chore: Remove chatbot. Fixes #7782 (#7783) 1053cf3b0
[ ] Alex Collins: chore: Remove chatbot. Fixes #7782 46cc91d17
[ ] Alex Collins: chore: Enable chatops bot. Fixes #7757 (#7761) 14f7417ad
[ ] Alex Collins: docs: Make SECURITY.md easy to discover. Fixes #7756 (#7758) b4307db7c
[ ] J.P. Zivalich: fix: Use v1 pod name if no template name or ref. Fixes #7595 and #7749 (#7605) 932466540
[ ] Saravanan Balasubramanian: fix: Missed workflow should not trigger if Forbidden Concurreny with no StartingDeadlineSeconds (#7746) e9b873ae3
[ ] Paco Guzmán: fix: artifacts.(*ArtifactServer).GetInputArtifactByUID ensure valid request path (#7730) 70715ecc8
[ ] Alex Collins: chore: Generate SBOM. Fixes #7672 (#7690) 8acaa3312
[ ] Alex Collins: docs: Improve plugin template docs. Fixes #7683 (#7688) f890dc899
[ ] Denis Melnik: fix: ContainerSet termination during pending Pod #7635 (#7681) bf3b58b98
[ ] Tino Schröter: fix: Pod "START TIME"/ "END TIME" tooltip shows time in UTC and local timezone Fixes #7488 (#7694) f6c9a6aa7
[ ] Yuan Tang: fix: Fix argo lint panic when missing param value in DAG task. Fixes #7701 (#7706) e2e046f6f
[ ] Yago Riveiro: feat: Add variable substitution on ConfigMapKeySelector. Fixes #7061 (#7542) 72817f2b8
[ ] Yuan Tang: fix: Handle release candidate versions in Python SDK version. Fixes #7692 (#7693) 753509394
[ ] Alex Collins: test: Add daemon set tests. Fixes #7409 (#7675) 0419bae91
[ ] Tino Schröter: docs: fix double appearance of how (#7670) ed9b093fc
[x] Alex Collins: fix: Support terminating with templateRef. Fixes #7214 (#7657) 67c278cd1
[ ] J.P. Zivalich: fix: Match cli display pod names with k8s. Fixes #7646 (#7653) 1159afc3c
[ ] Alex Collins: fix: Retry with DAG. Fixes #7617 (#7652) 6a97a6161
[ ] Tom Meadows: fix: insecureSkipVerify needed. Fixes #7632 (#7651) a20150c45
[ ] Isitha Subasinghe: fix: error when path length != 6 (#7648) 0137e1980
[ ] jwjs36987: fix: Fix non-standard git username support. Fixes #7593 (#7634) 6f60703db
[ ] khyer: fix: SSO to handle multiple authorization cookies such as from wildca… (#7607) 0ce9e70ef
[ ] Alex Collins: docs: Update privacy page. Fixes #7610 (#7625) 95cd467c7
[ ] Peixuan Ding: docs: Fix executor plugin example in docs (#7614) efb0041dd
[ ] Alex Collins: fix: Support artifact ref from tmpl in UI. Fixes #7587 (#7591) d2e98d6b4
[ ] Alex Collins: feat(ui): Show first-time UX. Fixes #7160 (#7170) c6be0fe77
[ ] Alex Collins: chore: Improve security scanning. Fixes #7599 (#7602) 7ca020191
[ ] Yuan Tang: fix: Upgrade prismjs to v1.26 to fix security scan. Fixes #7599 (#7601) 2e343eb7f
[ ] Alex Collins: fix: Support inputs for inline DAG template. Fixes #7432 (#7439) f9fa0e303
[ ] Peixuan Ding: fix: Fix inconsistent ordering of workflows with the list command. Fixes #7581 (#7594) bc27ada85
[ ] Peixuan Ding: feat: Support templateRef in LifecycleHook. Fixes #7558 (#7570) af257c178
[ ] kostas-theo: fix: hanging wait container on save artifact to GCS bucket artifactRepository (#7536) f1fe3bee4
[x] FengyunPan2: fix: fix nil point about Outputs.ExitCode. Fixes #7458 (#7459) a94b846e6
[ ] Andy: fix: More informative error message when artefact repository is not configured. Fixes #7372 (#7498) 4b83de9b5
[ ] cod-r: fix: update old buildkit version in buildkit-template.yaml (#7512) 2ab7dfebe
[ ] Ken Kaizu: fix: show invalid cron schedule error on cron status ui (#7441) c172d1dce
[ ] kennytrytek: fix: resolve resourcesDuration (#7299) fbf4751f4
[x] Yuan (Bob) Gong: fix(controller): fix pod stuck in running when using podSpecPatch and emissary (#7407) 033ed978e
[ ] Peixuan Ding: fix: Fix supplied global workflow parameters (#7573) ebdde3392
[ ] Isitha Subasinghe: fix: add priority field to submitopts (#7572) dbb1bcfbd
[ ] jacopo gobbi: docs: fix python SDK README.md example import (#7567) 81118d1c5
[ ] AdamKorcz: fix: Fix type assertion bug (#7556) bc1f304a9
[ ] leonharetd: docs: fix typo in container-set-template.md (#7545) 15c0035eb
[ ] AdamKorcz: fix: nil-pointer in util.ApplySubmitOpts (#7529) 970a503c5
[ ] 大雄: fix: handle source file is empty for script template (#7467) 18821c57f
[ ] Yuan Tang: fix: Make dev version of the Python SDK PEP440 compatible (#7525) b476c4af5
[ ] Roel van den Berg: fix: transient errors for s3 artifacts: Fixes #7349 (#7352) 26c1224b0
[ ] Nicoló Lino: fix: http template doesn't update progress. Fixes #7239 (#7450) 3371e7268
[ ] Yuan Tang: docs: Add additional args to avoid type checks. Fixes #7293 (#7500) e0f43b8a5
[ ] Yuan Tang: fix: Global param value incorrectly overridden when loading from configmaps (#7515) 4b006d5f8
[ ] Dillen Padhiar: fix: only aggregates output from successful nodes (#7517) 0f206d670
[ ] Michael Crenshaw: docs: fix retryStrategy field name (#7502) f93d00ab4
[ ] AdamKorcz: fix: out of range in MustUnmarshal (#7485) 318927ed6
[ ] Niklas Hansson: feat: add workflow.labels and workflow.annotations as JSON string. Fixes: #7289 (#7396) d3ecdf11c
[ ] Ting Yuan: fix: shutdown workqueues to avoid goroutine leaks (#7493) 4f9e299b7
[ ] Yuan Tang: docs: Differentiate instructions for installing different components. Fixes #7470 (#7477) ed71304b3
[ ] Serhat: docs: Fixing the missing -parameter word in workflow-templates docs (#7489) 54e8a05c0
[ ] Yuan Tang: docs: Fix typo mentees -> mentors (#7454) cda7cd46a
[ ] Dillen Padhiar: fix: submitting cluster workflow template on namespaced install returns error (#7437) dd77dc993
[ ] Yuan Tang: fix: Disable SDK release from master branch (#7419) d99796b2f
[ ] Alex Collins: fix: Correct default emissary bug. Fixes #7224 (#7412) 79d50fc27
[ ] Dillen Padhiar: fix: added check for initContainer name in workflow template (#7411) 014bac90f
[ ] Alex Collins: docs: Mentoring. Fixes #7307 (#7364) abf2dd59e
[ ] Niklas Hansson: feat: added retention controller. Fixes #5369 (#6854) 8d552fbf6
[ ] Simon Behar: fix: Skip missed executions if CronWorkflow schedule is changed. Fixes #7182 (#7353) 932040848
[ ] Yuan Tang: chore: Improve error message when configmap is not found. Fixes #7356 (#7371) d3c2f5d62
[ ] Simon Behar: fix: Propogate errors in task worker and don't return (#7357) 78dd747c6
[ ] Takumi Sue: fix: argument of PodName function (fixes #7315) (#7316) 8bd7f3971
[ ] Dominik Deren: fix: improve error message for ListArchivedWorkflows (#7345) 1a3b87bdf
[ ] Alex Collins: fix: Use and enforce structured logging. Fixes #7243  (#7324) 77d87da3b
[ ] BOOK: fix: cannot access HTTP template's outputs (#7200) cb8c06369
[ ] Simon Behar: fix: Use DEFAULT_REQUEUE_TIME for Agent. Fixes #7269 (#7296) e0d5abcff
[ ] Alex Collins: fix(ui): Fix events error. Fixes #7320 (#7321) 242360a4f
[ ] Yuan Tang: fix: Validate the type of configmap before loading parameters. Fixes #7312 (#7314) cf78ff6d7
[ ] Saravanan Balasubramanian: fix: Handle the panic in operate function (#7262) 08254f547
[ ] Nico Mandery: feat: Add PodPriorityClassName to SubmitOpts. Fixes #7059 (#7274) 77f520900
[ ] Takumi Sue: fix: pod name shown in log when pod deletion (#7301) 88cbea332
[ ] Simon Behar: fix: Use default value for empty env vars (#7297) 6c47c91e2
[ ] Alex Collins: feat: Allow remove of PVC protection finalizer. Fixes #6629 (#7260) c2b3e8e93
[ ] Yuan Tang: docs: Fix workflow name in suspend outputs example (#7268) e67e94c02
[ ] Alex Collins: fix: Fix argo auth token. Fixes #7175 (#7186) e0455772a
[ ] Benny Cornelissen: fix: improve feedback when submitting a workflow from the CLI w/o a serviceaccount specified (#7246) 0ea855479
[ ] Takumi Sue: docs: fix typo timout -> timeout (#7244) 8b530df48
[ ] Niklas Hansson: feat(emissary executor): Add step to allow users to pause template before and after execution. Fixes #6841 (#6868) 3d47a5d29
[ ] Alex Collins: fix: refactor/fix pod GC. Fixes #7159 (#7176) 1d715a05c
[ ] Mathew Wicks: docs: fix checkout path for local dev (#7241) 8477c73e1
[ ] Nityananda Gohain: feat: add CreatorUsername label when user is signed in via SSO. Fixes… (#7109) 09987a6dd
[ ] Rob Herley: fix: add gh ecdsa and ed25519 to known hosts (#7226) f34715475
[ ] Guillaume Fillon: fix: Fix ANSI color sequences escaping (#7211) eb9a42897
[ ] Michael Weibel: fix: Do not patch empty progress. fixes #7184 (#7204) 1453edca7
[ ] Mathew Wicks: fix: ci sleep command syntax for macOS 12 (#7203) 34e5b5477
[ ] kennytrytek: fix: allow wf templates without parameter values (Fixes #6044) (#7124) 17fb9d813
[ ] kennytrytek: fix(test): Make TestMonitorProgress Faster (#7185) 225a5a33a
[ ] Denis Melnik: feat(controller): Add default container annotation to workflow pod. FIxes: #5643 (#7127) 52321e2ce
[ ] Alex Collins: fix(ui): Correctly show zero-state when CRDs not installed. Fixes #7001 (#7169) 0482964d9
[ ] Valér Orlovský: fix: Relative submodules in git artifacts. Fixes #7141 (#7162) f9e554d26
[ ] Alex Collins: chore: fix make test (#7157) 5796081cd
[ ] Simon Behar: fix: Reorder CI checks so required checks run first (#7142) 22af73650
[ ] Tianchu Zhao: docs(ui): document wftemplate enum dropdown. Fixes #6824 (#7114) ded64317f
[ ] Simon Behar: fix: Return error when YAML submission is invalid (#7135) bd3be1152
[ ] momom-i: feat: Add FAQ link to unknown pod watch error. Fixes #6886 (#6953) 877752428
[ ] Simon Behar: fix: Respect template.HTTP.timeoutSeconds (#7136) 209ff9d9b
[ ] Tianchu Zhao: fix(controller): default volume/mount to emissary (#7125) 02165aaeb
[ ] Basanth Jenu H B: feat: Adds SSO control via individual namespaces. Fixes #6916 (#6990) 475d8d54f
[ ] Kyle Hanks: fix: typo in node-field-selector.md (#7116) 3d597269e
[ ] Sebastiaan Tammer: docs: fixed a typo in security.md (#7117) 863d8b9ad
[ ] Dimas Yudha P: refactor: Fixing typo WriteTeriminateMessage #6999 (#7043) e716aad73
[ ] Saravanan Balasubramanian: fix: Daemon step in running state, but dependents don't start (#7107) ca87f2906
[ ] ybyang: feat: Add workflow logs  selector support. Fixes #6910 (#7067) 5eab921eb
[ ] J.P. Zivalich: fix: Add pod name format annotation. Fixes #6962 and #6989 (#6982) 1e8715954
[ ] Alex Collins: build: prevent bad commit messages, fix broken builds (#7086) 0fb104481
[ ] Jonathan: fix: Format issue on WorkflowEventBinding parameters. Fixes #7042 (#7087) c5de76b6a
[ ] Simon Behar: fix: Ensure HTTP reconciliation occurs for onExit nodes (#7084) 64fce4a82
[ ] Simon Behar: fix: Ensure HTTP templates have children assigned (#7082) d6a62c3e2
[ ] Alex Collins: ci: fix SDK publishing 91671cdd1
[ ] Alex Collins: fix(ui): Correct HTTP connection in pipeline view (#7077) 46767b86b
[ ] Ziv Levi: fix: add outputs.parameters scope to script/containerSet templates. Fixes #6439 (#7045) 201ba5525
[ ] Tianchu Zhao: fix: Unit test TestNewOperation order of pipeline execution maybe different to order of submit (#7069) 31bf57b64
[ ] Tianchu Zhao: docs(cli): fix cron delete flag description (#7058) 18c953df6
[ ] Saravanan Balasubramanian: fix: Precedence of ContainerRuntimeExecutor and ContainerRuntimeExecutors (#7056) 4734cbc44
[ ] Saravanan Balasubramanian: fix: Memozie for Step and DAG level (#7028) 65ff89ac8
[ ] Alex Collins: test: disable TestDoNotCreatePodsUnderStopBehavior for docker executor. Fixes #7040 (#7048) 3979f40d7
[ ] Ziv Levi: fix: Support RFC3339 in creationTimeStamp. Fixes #6906 (#7044) 0baa4a203
[ ] Tianchu Zhao: feat(ui): add label/state filter to cronworkflow. Fixes #7034 (#7035) 25e1939e2
[ ] Alex Collins: feat(server): Sync dispatch of webhook events by default. Fixes #6981 and #6732 (#6995) 0758eab11
[ ] William Van Hevelingen: docs: Add contributor meeting information and fix slack channel (#7031) d3442472e
[ ] Alex Collins: fix: Minor corrections to Swagger/JSON schema (#7027) ba472e131
[ ] Alex Collins: docs: Fix docs build. Fixes #7023 (#7024) 93c301dff
[ ] Tianchu Zhao: fix(controller): use correct pod.name in retry/podspecpatch scenario. Fixes #7007 (#7008) 3f0a531aa
[ ] Tianchu Zhao: fix(ui): labels in report/archive should be sorted (#7009) 7f5262338
[ ] smile-luobin: fix(controller): fix bugs in processing retry node output parameters. Fixes #6948 (#6956) 50813daaf
[ ] J.P. Zivalich: fix: Restore default pod name version to v1 (#6998) 86ddda592
[ ] Tianchu Zhao: fix(artifact)!: default https to any URL missing a scheme. Fixes #6973 (#6985) 0446f521d
[ ] Zadkiel: fix(typo): correct typo in event-dispatch error log (#6688) cfdebf64e
[ ] NextNiclas: fix: OAuth2 callback with self-signed Root CA. Fixes #6793 (#6978) 2a15853ec
[ ] smile-luobin: feat: fix workflow configmap argument cannot be referenced as local variable. Fixes #6869 (#6898) 6384e5f21
[ ] NextNiclas: fix: Allow self-signed Root CA for SSO. Fixes #6793 (#6961) 72356abad
[ ] Miroslav Tomasik: fix: response on canceled workflow action (#6859) (#6967) c705294c9
[ ] William Van Hevelingen: docs: Fix typo in pr template (#6965) b6369dcb0
[ ] SalvadorC: fix: Unreachable code in util/tls/tls.go. Fixes  #6950 (#6960) cf9a6cdd0
[ ] Arthur Sudre: fix: multi-steps workflow (#6957) 6e1f2505a
[ ] J.P. Zivalich: chore(ui): Move pod name functions and add tests. Fixes #6946 (#6954) 1239ba8ef
[ ] Peter Evers: fix(docs): fix data transformation example (#6901) 452433989
[ ] Bob Haddleton: fix(executor): add test for non-root user creating a script (#6905) 73d60108b
[ ] Iven: fix: Skip empty withParam tasks. Fixes #6834 (#6912) 79d03a920
[ ] Tianchu Zhao: feat(executor): default executor to emissary. Fixes #6785 (#6882) b0d1f6583
[ ] J.P. Zivalich: fix(ui): Change pod names to new format. Fixes #6865 (#6925) 67fe87ba9
[ ] Saravanan Balasubramanian: fix: BASE_HREF ignore (#6926) 1bcfa1aa5
[ ] Micah Beeman: fix(controller): Fix getPodByNode, TestGetPodByNode. Fixes #6458 (#6897) 41515d65c
[ ] Yuan Tang: docs: Fix demonstration of using existing ConfigMap in memoization cache (#6920) 9efc9e8fc
[ ] Alex Collins: fix: do not delete expr tag tmpl values. Fixes #6909 (#6921) 5a7708c2c
[ ] Tianchu Zhao: feat(ui): resume on selected node. Fixes #5763 (#6885) c5b1533d3
[ ] Saravanan Balasubramanian: fix: Parameter with Value and Default (#6887) ef6aad617
[ ] zorulo: fix: Resource requests on init/wait containers. Fixes #6809 (#6879) 4d38404df
[ ] Tianchu Zhao: fix(ui): fixed width button (#6883) cca4792c5
[ ] Tianchu Zhao: feat(server): archivedWf add namePrefix search. Fixes #6743 (#6801) b54809771
[ ] Hong Wang: fix: upgrade sprig to v3.2.2 (#6876) c962bb189

@sarabala1979 can I request

only show fixes in list, not chore/feat
I think some of these fixes are already in v3.2?

done.  issues have fix subject that's why it is included. I will do a manual check next time.
I got PRs from last hash in v3.2 to master HEAD.

Can I leave it with you to review the list and include any bug fixes you think we need?

sure


something new | timed tasks

would it be possible to make tasks appear from current time?
lets say we have daily tasks that we must get done.
we come at work in the morning and it's 7 AM
we see tasks from 7 till 4.
but when  there is 8 AM we wouldn't see tasks from 7-8 anymore.
We'd only see  from 8-4. and so on
Next day we come to work we'd again see tasks from 7-4.
By this I mean that tasks that we should do would fade away if time passed.

Interesting idea, although won't be added very soon.

Damn shame.. I*m in need of this currently :-/


How to download files using storage?

I have implemented the storage library but I am having difficulty downloading files.
In my case, I have to download .zip files in the commonMain package.
Does the SDK currently have this type of implementation? If not, would I have to implement it on the native side to then use it in the shared environment?

Im not a maintainer or anything but i have been working on some storage improvements. There is currently no implementation for this.
You can add the functionality by updating the expected class in commonMain and then you can use the native SDKs to provide the actual implementations.
I don't know what kind of files you want to download but you can also access the download url of a reference. That way you can use your http client to download these files as long as this functionality is not available yet.

Thanks for the tips @BasBuijsen , I'll try to implement the download via the file's URL. In my case, they are .zip files
But I'm having another problem and I don't know if the SDK supports this. I have some different databases in the storage. I need to configure the address that is not in the google-services.json file.
On Android I can do it like this
val storage = Firebase.storage(BuildConfig.BUCKET_SINC)

How would I do this in Firebase SDK?

@SirFilbido as far as i can see there is no support for this yet.

@SirFilbido i had some time to spare so i created the getters for Firebase storage with a custom url.

Great news, thanks @BasBuijsen.

You can download files using Ktor HTTP client. Here's a minimal snippet that combines GitLive's Firebase Storage and Ktor, to download a file:
val link = Firebase.storage.reference.child(path).getDownloadUrl()

val client = HttpClient(CIO) {
    install(Logging) {
        level = LogLevel.INFO
    }
}

client.prepareGet(url = Url(link)).execute { httpResponse ->
                val channel: ByteReadChannel = httpResponse.body()

                while (!channel.isClosedForRead) {
                    val packet = channel.readRemaining(DEFAULT_HTTP_BUFFER_SIZE.toLong())
                    while (!packet.isEmpty) {
                        val bytes = packet.readBytes()

                        //todo: do something with the received bytes, for example, you can add them to a mutable byte array
                    }
                }
            }

You can extend this example by using kotlinx.io which allows you to write to platform-specific files from common code using sink()

Hi,
i use this for Android:
private const val ONE_MEGABYTE: Long = 1024 * 1024

suspend fun getFile(path: String): Result<String> {
    return try {
        Firebase.storage.android.getReference(path).getBytes(ONE_MEGABYTE).await().let { Result.success(String(it)) }
    } catch (e: Exception) {
        Result.failure(e)
    }
}

and this for iOS
private const val ONE_MEGABYTE: Long = 1024 * 1024

@OptIn(ExperimentalForeignApi::class)
suspend fun getFile(path: String): Result<String> {
    return withTimeoutOrNull(1000) {
        suspendCancellableCoroutine { cont ->
            Firebase.storage.ios.referenceWithPath(path).dataWithMaxSize(ONE_MEGABYTE) { data, error ->
                if ((error != null && error != nil) || data == null)
                    cont.resume(Result.failure(Exception("File not found")))
                else
                    cont.resume(Result.success(data.toByteArray().toKString()))
            }
        }
    } ?: Result.failure(Exception("Timeout"))
}

I believe the original issue is solved now


Update EasyCLA main page project information

Summary
We received feedback from the AI Community that would like to join to EasyCLA that while checking EasyCLA main page https://easycla.lfx.linuxfoundation.org/#/ the Projects section is restricted to Project Manager and Community Managers, but there is no indication in the page that this is the case. The user when tried to access it just gets an Access Denied.
The request is to provide additional information to the user that the Project section is restricted to Project Manager and Community Managers.
Background
As any user you can access https://easycla.lfx.linuxfoundation.org/#/, select projects:

The user will just get an access denied without understanding the reason:

Acceptance Criteria
We should provide additional information to the user that the Project section is restricted to Project Manager and Community Managers.

Closing this one as the UI provides: "Are you a Community Manager or Project Manager?", should be enough for the users.


Re-enable shapeless tests

Currently disabled because of alexarchambault/scalacheck-shapeless#50, but should be re-enabled as soon as this is fixed.

This was slightly improved with 6e76b60483851d65da8af66f64ffad67c3a94c0f, where Arbitrary[Or] is hard-coded but Arbitrary[Left] and Arbitrary[Right] are derived automatically.

Fixed with scalacheck-shapeless 1.1.4.


[HOW-TO] ExposureTime / ShutterSpeed

How set minimum ExposureTime / maximum ShutterSpeed.
Dear Developers, I working on a SkyCam for SolarPowerPredictions. I created some examples..
libcamera-jpeg -o shutterspeedxy.jpg --shutter xy

Ironically there comes a point where the exposure increases again instead of continuing to decrease.
However I just would like to reduce the exposure time further? How can I set the maximum possible, do i need to add more settings?
Thank you!

Hi, I notice you're using libcamera-apps, so this might be a more appropriate place to file a question.
However, I do notice that it seems like you're changing the shutter but not fixing the gain. I'm guessing this might not be what you intend, so try adding --gain 1 to the commands. I don't know if this would fix what you're seeing but it's probably the first thing to try. Please post back on the libcamera-apps page if you'd like more advice after that.
Thanks!

Why should gain change with different shutter speeds? Just tested it, it makes no difference...

Because if you fix the shutter speed, it will try to use the gain to achieve the same brightness target values instead.

Okay make sense david, anythingelse I could try?

I see you've posted on libcamera-apps now, so thanks for doing that. I've replied there, so will close this thread. Thanks!

There are a couple of problems here. Firstly it looks like you might be using the old PiCamera interface? The Picamera2 interface uses a set_controls method to pass particular camera controls, e.g.
camera.set_controls({"ExposureTime": 100000, "AnalogueGain": 1})

The next thing is that cameras have quite a deep pipeline, especially for exposure and analogue gain (as even the sensor takes several frames to deal with them), so it will be quite a few frames before those controls have the effect you want. Though you can change them frame-by-frame, so the long-ish delay is only for the first change to happen. (The other alternative is to stop the camera, request the values and then restart it. You're then guaranteed that the very first frame will have to values you wanted, but the whole stop/start procedure is a bit slow.)
I've wondered about providing a function which says "capture frames at these different exposures/gains". It would take a while for the first one to arrive, but then they'd come in pretty much "back to back", (Though even then care has to be taken because nothing guarantees that the system might not drop one of them, so you'd have to sort of keep requesting them until you've got them all). So maybe I'll look into that.
One more small fly in the ointment is that I think nothing actually tells you the max/min possible exposures, so asking for something smaller than is possible would end up getting stuck waiting for something that can't happen. We'd probably need some changes in libcamera to address that, so that might be slightly trickier, or at least take longer to change.

Is there any documentation that I can't find or how could I have known about set_controls?
Ok I'll see how long it takes with start stop or try the frame rate.
You definitely have your hands full, but actually such a function would be great and actually not that complicated.
Regarding your last comment, I think it would make sense if there was a fixed value for the minimum shutter speed, and any value selected below that would automatically assume this.
were you able to find out the minimum exposure time for the imx477?

You need to set the "FrameDurationLimits". It takes a pair of values being the min and max frame durations in microseconds. You can set them to be the same if you want.

thanks you. where can I find a list with information about the all possible settings?

You can look at camera.camera_controls to see what's available. Formal documentation beyond the GitHub readme is something I'm only just starting on. The camera controls are supposed to show you the min and max values, though I note for exposure time and frame durations it only seems to show placeholder values.

I think just ask for the camera_controls property of the Picamera2 object. (sorry, not at a Pi right now).


Live validation is not good enough

Testing #43968

Have a file c in the path a/b
Like this:

Create a new file
Type a/b/c/d
No validation error is shown
Press Enter
Observe error:

fixed by #46096


CLDC-1882 Bulk upload validate leaving reason if renewal

Context

https://digital.dclg.gov.uk/jira/browse/CLDC-1882
If the lettings is a renewal the the leaving reason should be checked so it makes sense for a renewal

Changes

If the lettings is a renewal then we check the leaving reason is limited a certain subset

Screenshots

I'm thinking should this validation belong as is just on bulk upload? or be moved to belong with all the other validations on Log?


Add Microsoft.Data.Analysis.nuget project

Microsoft.Data.Analysis.nuget project was added for including Microsoft.Data.Analysis.Interactive project.
cc @eerhardt

I think someone with write access rights may help to fix the merge conflict resulted from moving the Microsoft.Data.Analysis.Interactive project at the right place inside src folder.
Thank you.
<<<<<<< master
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Data.Analysis.Interactive", "src\Microsoft.Data.Analysis.Interactive\Microsoft.Data.Analysis.Interactive.csproj", "{0C11386C-E3CC-45EB-B932-9297A8DD6649}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Data.Analysis.nuget", "src\Microsoft.Data.Analysis.nuget\Microsoft.Data.Analysis.nuget.csproj", "{D4B13DCE-913F-41BE-B132-ED2175848DA4}"
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.Data.Analysis.Interactive", "Microsoft.Data.Analysis.Interactive\Microsoft.Data.Analysis.Interactive.csproj", "{0C11386C-E3CC-45EB-B932-9297A8DD6649}"

master

I'll do this later today @dcostea.

Edit: nvm, it looks like the PR was already rebased.
@pgovind, Is it anything left to do, from my side?

I should have caught this last time, but we put the original Interactive project in the wrong place. It is in the root, and not under src. Can you delete that project (or logically move it to this location)?

Refers to: src/Microsoft.Data.Analysis.Interactive/Microsoft.Data.Analysis.Interactive.csproj:1 in fbe6dba. [](commit_id = fbe6dba85b8d058357fa4df727b263f3992ae8b2, deletion_comment = False)

It looks like the builds are actually failing, but for some reason Azure DevOps is reporting they still pass:
https://dev.azure.com/dnceng/public/_build/results?buildId=721436&view=logs&j=98d43ca7-10c7-5044-d8dc-07206263d511&t=acc458f0-2e0e-5219-28cc-1f016a65ca57&l=250
/home/vsts/work/1/s/.dotnet/sdk/5.0.100-preview.6.20310.4/Sdks/NuGet.Build.Tasks.Pack/build/NuGet.Build.Tasks.Pack.targets(198,5): error NU5128: Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below: [/home/vsts/work/1/s/src/Microsoft.Data.Analysis.nuget/Microsoft.Data.Analysis.nuget.csproj]
/home/vsts/work/1/s/.dotnet/sdk/5.0.100-preview.6.20310.4/Sdks/NuGet.Build.Tasks.Pack/build/NuGet.Build.Tasks.Pack.targets(198,5): error NU5128: - Add lib or ref assemblies for the netcoreapp3.1 target framework [/home/vsts/work/1/s/src/Microsoft.Data.Analysis.nuget/Microsoft.Data.Analysis.nuget.csproj]
##[error].dotnet/sdk/5.0.100-preview.6.20310.4/Sdks/NuGet.Build.Tasks.Pack/build/NuGet.Build.Tasks.Pack.targets(198,5): error NU5128: (NETCORE_ENGINEERING_TELEMETRY=Build) Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below:
- Add lib or ref assemblies for the netcoreapp3.1 target framework

@pgovind - do you know why the CI infrastructure isn't failing here?

you can repro this locally by executing .\build.cmd -pack from the root of the repo

I saw that too and I didn't know what to think.
See below the result on my machine:
Build succeeded.

C:\repos\corefxlab\.dotnet\sdk\5.0.100-preview.6.20310.4\Sdks\NuGet.Build.Tasks.Pack\build\NuGet.Build.Tasks.Pack.targets(198,5): error NU5128: Some target frameworks declared in the dependencies group of the nuspec and the lib/ref folder do not have exact matches in the other location. Consult the list of actions below: [C:\repos\corefxlab\src\Microsoft.Data.Analysis.nuget\Microsoft.Data.Analysis.nuget.csproj]
C:\repos\corefxlab\.dotnet\sdk\5.0.100-preview.6.20310.4\Sdks\NuGet.Build.Tasks.Pack\build\NuGet.Build.Tasks.Pack.targets(198,5): error NU5128: - Add lib or ref assemblies for the netcoreapp3.1 target framework [C:\repos\corefxlab\src\Microsoft.Data.Analysis.nuget\Microsoft.Data.Analysis.nuget.csproj]
    0 Warning(s)
    1 Error(s)

@eerhardt , I have installed .NET 5 preview 6 and ./build.cmd looks good, the error does not reproduce anymore.
I have added some unit tests but it seems the build machine doesn't have .NET Core 3.1. I cannot downgrade MDA.Interactive to .NET Core 3.0 to make it build successfully, because it needs .NET Core 3.1. Should I remove the freshly added unit test project?

I have added some unit tests but it seems the build machine doesn't have .NET Core 3.1.

You can add the 3.1 runtime here:

You can add the 3.1 runtime here:
https://github.com/dotnet/corefxlab/blob/fb1fe923b19ea052341cff707094b49214d458dd/global.json#L5-L7

@eerhardt , I have the unit tests passing now, but the issue related to .NET 5 is still there. Maybe @pgovind can help with that?

I'll take a look at the failing CI jobs and packing errors tomorrow :) Thanks for the patience on this!

Alright, I took a look at the build failures and @joperezr helped me figure out what was going on. Basically the wrapper MDA.nuget project wouldn't actually build the MDA and MDAI projects. Also, @joperezr pointed out that making a wrapper project to include 2 other projects isn't the preferred approach to do this. Instead, I decided to include MDAI within the MDA nuget package for netcoreapp3.1+ scenarios (but MDAI still lives as it's own project. During -pack we just include everything from MDAI). I pushed a commit to the current branch @dcostea (I hope you don't mind!).

@dcostea I took the liberty to push directly to your PR too in order to address the comments by @eerhardt I hope that was ok. After my last change, you can now call dotnet pack to both the MDA.csproj or MDAI.csproj and they will both generate the same package, which layout is as follows:
Icon.png
LICENSE
Microsoft.Data.Analysis.nuspec
out.txt
THIRD-PARTY-NOTICES.TXT
[Content_Types].xml
interactive-extensions\dotnet\Microsoft.Data.Analysis.Interactive.dll
lib\netstandard2.0\Microsoft.Data.Analysis.dll
lib\netstandard2.0\Microsoft.Data.Analysis.xml

I saw a demo of this locally as well. Super cool! I'm going to go ahead and merge it. Thanks for all the work @dcostea @eerhardt @jonsequitur and @joperezr

Thank you, everyone, @eerhardt @pgovind @jonsequitur @joperezr @colombod for your support. I hope this is my first contribution from a long series.


Opendevtools() is not working in version 7.1.1

Hey @shsengar, I know this bug has been untouched for a long time and was wondering if this issue is still happening for you in  an up-to-date version?

try webContents.openDevTools({ mode: 'detach' });

I'm using Electron 13.0.1 and am having the same issue on Windows 10. openDevTools() and openDevTools({ mode: 'detach' }) do not work. I've also tried clicking on "Toggle Developer Tools" after the application is open and still cannot get it to open. Any ideas on what may be the issue?


Mix Format: File triggers a full recompile

Using Sublime Text 4169 on macOS 14.4 and asdf (elixir 1.16.1-otp-26, erlang 26.2.2), formatting a file triggers a full app recompile (and crash the web server started with mix phx.server in parallel). I guess the compilation in Sublime and in iTerm2 do not share the same compilation environment.
How to make sure Elixir Syntax uses the same compilation process as my default terminal?
Thanks

Can you paste some logs? In what way does it crash the running process?

It does not crash. It just takes seconds to recompile the whole Elixir
project while it has already been compiled (server running in parallel).
What I do:

I start a server: mix phx.server
I format a file (the bottom drawer of Sublime Text opens and show the
compilation (without cache) of the whole application)
I observe that my phoenix server is down when loading one of its webpage.
Here is the error message:

Compilation errorConsole output is shown below.

** (RuntimeError) could not compile application: fala.

You must restart your server after changing the following files:

  * config/dev.exs
  * config/config.exs

    (phoenix 1.7.11) lib/phoenix/code_reloader/server.ex:236:
Phoenix.CodeReloader.Server.mix_compile_unless_stale_config/4
    (phoenix 1.7.11) lib/phoenix/code_reloader/server.ex:188:
Phoenix.CodeReloader.Server.mix_compile/5
    (phoenix 1.7.11) lib/phoenix/code_reloader/server.ex:74: anonymous
fn/4 in Phoenix.CodeReloader.Server.handle_call/3
    (phoenix 1.7.11) lib/phoenix/code_reloader/server.ex:295:
Phoenix.CodeReloader.Server.proxy_io/1
    (phoenix 1.7.11) lib/phoenix/code_reloader/server.ex:72:
Phoenix.CodeReloader.Server.handle_call/3
    (stdlib 5.2) gen_server.erl:1131: :gen_server.try_handle_call/4
    (stdlib 5.2) gen_server.erl:1160: :gen_server.handle_msg/6
    (stdlib 5.2) proc_lib.erl:241: :proc_lib.init_p_do_apply/3

On Mon, 18 Mar 2024 at 10:33, Po Chen @.***> wrote:

Can you paste some logs? In what way does it crash the running process?
—
Reply to this email directly, view it on GitHub
https://github.com/elixir-editors/elixir-sublime-syntax/issues/69#issuecomment-2003331727,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPCQKAPVKNSLKXTWR567NDYY2YIJAVCNFSM6AAAAABE3F5VCKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBTGMZTCNZSG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Thanks for your fast reply. I did not change the config. It’s a bug 😕
On Mon, 18 Mar 2024 at 13:10, Po Chen @.***> wrote:

If you did just format one of the config files, it's required to restart
the app by phoenix. If you formatted some other files and saw this, then
it's a bug.
—
Reply to this email directly, view it on GitHub
https://github.com/elixir-editors/elixir-sublime-syntax/issues/69#issuecomment-2003744997,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPCQKDHSFQVRP7LOUFDEV3YY3KRVAVCNFSM6AAAAABE3F5VCKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBTG42DIOJZG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Does it always happen or only the first time?

Always. I mean, whenever I recompile the server, it recompiles for
formatting and vice-versa.
On Tue, 19 Mar 2024 at 03:12, Po Chen @.***> wrote:

Does it always happen or only the first time?
—
Reply to this email directly, view it on GitHub
https://github.com/elixir-editors/elixir-sublime-syntax/issues/69#issuecomment-2005613628,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPCQKCHIFNAIOYPZAJY2QTYY6NJ5AVCNFSM6AAAAABE3F5VCKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBVGYYTGNRSHA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yeah, I think the issue is that Sublime and iTerm2 don't share the same environment. The Phoenix server is (most likely) compiled and started by the asdf-installed version of Elixir. I don't know about macOS, but you should be able to start Sublime from that iTerm2 shell to give it the same environment. I hope that's an acceptable workaround for now.
I don't know what the proper solution would be yet. Maybe it is to make the mix_format palette command aware of the .tool-versions file or of asdf and run mix accordingly. Or maybe it's adding settings to the command so the user can configure mix_format for each project individually.
There's something related that I noticed: I'm not using asdf, but when I run the tests from the CLI and then from Sublime it still compiles everything again, even though the Elixir version is the same. Quite annoying! I wish I had fun investigating this, but at the moment I'm busy with other things that are more fun. :sweat_smile:

Another option is use LSP and LSP-elixir, so that you use the language server to format the code, instead of using the current app environment, which triggers recompilation.

Using the LSP formatter works as expected. Thanks for the advice.
On Wed, Mar 20, 2024 at 1:42 AM Po Chen @.***> wrote:

Another option is use LSP and LSP-elixir, so that you use the language
server to format the code, instead of using the current app environment,
which triggers recompilation.
—
Reply to this email directly, view it on GitHub
https://github.com/elixir-editors/elixir-sublime-syntax/issues/69#issuecomment-2008425292,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPCQKFSNY2DDI7QGO3ESK3YZDLNRAVCNFSM6AAAAABE3F5VCKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMBYGQZDKMRZGI
.
You are receiving this because you authored the thread.Message ID:
@.***>