Question: XmlArrayItemAttribute support?

Hi there,
I have used the framework default XmlSerializer in the past but am running into problems when porting to .net core, so I'm currently trying to find out if ExtendedXmlSerializer can jump in.
I have made excessive use of the XmlArrayItemAttribute (for using it's Type member to serialize DerivedTypes in generic lists). I have already found this to be dead easy using ExtendedXmlSerializer, but am worrying about how to deserialize existing xml from the default XmlSerializer.
public class SomeClassToSerialize
{
    [XmlElement(ElementName = "SomeProperty", Type=typeof(SerializationHelper<SomeAbstractClass>))]
    public SomeAbstractClass SomeProperty { get; set; }

    [XmlArray(ElementName = "SomeList")]
    [XmlArrayItem(ElementName = "SomeEntry", Type=typeof(SerializationHelper<SomeAbstractClass>))]
    public List<SomeAbstractClass> SomeList { get; set; } = new List<SomeAbstractClass>();
}

Is there a configuration for the "item name" in collections? Or an easy way to handle this in a custom serializer? This is an example xml:
<?xml version="1.0" encoding="utf-8"?>
<SomeClassToSerialize xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SomeProperty type="ClassLibrary1.DerivedClass, ClassLibrary1">
        <DerivedClass>
            <SomeString>Dieser Satz kein Verb</SomeString>
        </DerivedClass>
    </SomeProperty>
    <SomeList>
        <SomeEntry type="ClassLibrary1.DerivedClass, ClassLibrary1">
            <DerivedClass>
                <SomeString>Ein Listeneintrag</SomeString>
            </DerivedClass>
        </SomeEntry>
        <SomeEntry type="ClassLibrary1.AnotherDerivedClass, ClassLibrary1">
            <AnotherDerivedClass>
                <SomeInt>12</SomeInt>
            </AnotherDerivedClass>
        </SomeEntry>
    </SomeList>
</SomeClassToSerialize>

Hi Mike,
thanks for getting back to me. While I don't like the idea of XSLT transforming the data, it is an idea nevertheless!
I've run into several other problems with the default XmlSerializer in the meantime regarding .net standard (things not working there which were working fine under .net framework but ms won't fix it for obscure reasons), so it's quite likely this'll be the way to go.
Be prepared for more questions incoming ;-)

Cool @wexman you can always give it a whirl to see how far you can get. 😁
One thing that sticks out to me is that type="ClassLibrary1.DerivedClass, ClassLibrary1" and others like it.  I was not aware that the traditional serializer handles typing in this regard.  Further, it would seem that the attribute is not fully qualified (with a namespace), so that for sure will be a problem.

No, that part is the result of using the SerializationHelper I mentioned in the example, which would allow me (at least when run under .net framework) to serialize derived types without specifying an XmlInclude attribute. Those having a non-fully qualified name is actually on purpose ;-)

Ah!  We of course handle this with our own exs:type="" attribute.  A thought does occur to me that if you get this loading (deserialized) via the traditional serializer, you could then write it out with an instance of our serializer, if that makes sense.
So:

Load XML and deserializer with System.Xml.XmlSerializer.
Serialize object into new XML with ExtendedXmlSerializer.

Yes, that would be a possibility. I'm now kind of redesigning the whole thing so it would let us use all kinds of different serializers where we're now just using System.Xml.XmlSerializer, for example there'll be an ExtendedXmlSerializer, a NewtonsoftJsonSerializer, a ProtobufSerializer or whatever.
Should have done this from the very beginning...

Ok cool... sounds like we got you on the right track here.  If you run into any additional problems and/or have another question, please feel free to open another issue or to comment on this one and we can reopen and explore. 👍  Closing for now.


feat: adding github actions

This PR fixes #
Checklist

[ ] I have signed the CLA
[ ] I have updated/added any relevant documentation

Description
What's the goal of this PR?
What changes did you make?
What alternative solution should we consider, if any?

Dependabot actions reverted

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


SSL configuration is Running - [BRIEF DESCRIPTION]

App Id: dxku4vtlhfebq
Region: eu-west-2
Step: SSL configuration
Status: Running

Note: Do not include information that is sensitive in nature such as your domain name, company etc.

Issue/question
Has been stuck on SSL configuration for over 24 hours. The SSL didn't renew so I removed the domain and re-added it but now the SSL won't configure.
Error message
If there is an error message, please include it here.
Note: Be sure to check the message for sensitive information.
Additional information
Domain is in Route 53. SSL creation adds the records automatically and I've double checked that they are correct. Name servers are set to the Route 53 hosted zone.

Can you provide more information regarding how the SSL didn't renew?

The SSL had expired for a few days, I couldn't see a way of renewing it within AWS Amplify, I thought that it would do it automatically. As I couldn't find anything I removed the domain and re-added it from the App.

Did re-adding the domain resolve your issue?

No, it just hangs on SSL Configuration. It's been configuring for a few days now. I've tried it multiple times. I've even created a new app and added the domain to that to see if it works and that didn't do anything either.

Looks like you got this working with a different app with Id: _d2beveju1oigg4.

Yeah, the SSL configuration finally failed. I then re-added the domain and it worked.


Get-Command -Syntax returns wrong output for PowerShellGet if multiple -Module are specified at the same time

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

 Syntax for PSReadLine commands are displayed correctly:
`Find-Command
Find-Command
Find-Command
Find-DSCResource
Find-DSCResource
Find-DscResource
Find-Module
Find-Module
Find-Module
Find-RoleCapability
Find-RoleCapability
Find-RoleCapability
Find-Script
Find-Script
Find-Script
Get-CredsFromCredentialProvider
Get-CredsFromCredentialProvider
Get-InstalledModule
Get-InstalledModule
Get-InstalledModule
Get-InstalledScript
Get-InstalledScript
Get-InstalledScript
Get-PSRepository
Get-PSRepository
Get-PSRepository
Install-Module
Install-Module
Install-Module
Install-Script
Install-Script
Install-Script
New-ScriptFileInfo
New-ScriptFileInfo
New-ScriptFileInfo
PSConsoleHostReadLine
Publish-Module
Publish-Module
Publish-Module
Publish-Script
Publish-Script
Publish-Script
Register-PSRepository
Register-PSRepository
Register-PSRepository
Save-Module
Save-Module
Save-Module
Save-Script
Save-Script
Save-Script
Set-PSRepository
Set-PSRepository
Set-PSRepository
Test-ScriptFileInfo
Test-ScriptFileInfo
Test-ScriptFileInfo
Uninstall-Module
Uninstall-Module
Uninstall-Module
Uninstall-Script
Uninstall-Script
Uninstall-Script
Unregister-PSRepository
Unregister-PSRepository
Unregister-PSRepository
Update-Module
Update-Module
Update-Module
Update-ModuleManifest
Update-ModuleManifest
Update-ModuleManifest
Update-Script
Update-Script
Update-Script
Update-ScriptFileInfo
Update-ScriptFileInfo
Update-ScriptFileInfo
Get-PSReadLineKeyHandler [-Bound] [-Unbound] [<CommonParameters>]
Get-PSReadLineKeyHandler [-Chord] <string[]> [<CommonParameters>]
Get-PSReadLineOption [<CommonParameters>]
Remove-PSReadLineKeyHandler [-Chord] <string[]> [-ViMode <ViMode>] [<CommonParameters>]
Set-PSReadLineKeyHandler [-Chord] <string[]> [-ScriptBlock] <scriptblock> [-BriefDescription <string>] [-Description <string>] [-ViMode <ViMode>] [<CommonParameters>]
Set-PSReadLineKeyHandler [-Chord] <string[]> [-Function] <string> [-ViMode <ViMode>] [<CommonParameters>]
Set-PSReadLineOption [-EditMode <EditMode>] [-ContinuationPrompt <string>] [-HistoryNoDuplicates] [-AddToHistoryHandler <Func[string,Object]>] [-CommandValidationHandler <Action[CommandAst]>] [-HistorySearchCursorMovesToEnd] [-MaximumHistoryCount <int>] [-MaximumKillRingCount <int>] [-ShowToolTips] [-ExtraPromptLineCount <int>] [-DingTone <int>] [-DingDuration <int>] [-BellStyle <BellStyle>] [-CompletionQueryItems <int>] [-WordDelimiters <string>] [-HistorySearchCaseSensitive] [-HistorySaveStyle <HistorySaveStyle>] [-HistorySavePath <string>] [-AnsiEscapeTimeout <int>] [-PromptText <string[]>] [-ViModeIndicator <ViModeStyle>] [-ViModeChangeHandler <scriptblock>] [-PredictionSource <PredictionSource>] [-Colors <hashtable>] [<CommonParameters>]`

Error details
No error returned but output is wrong.

Workaround:
1. Use Get-Command only on PowerShellGet first: `Get-Command -Module PowerShellGet -Syntax`
2. Reenter `Get-Command -Module PowerShellGet,PSReadLine -Syntax`: syntaxes for both modules are correctly displayed

Environment data
Name                           Value
----                           -----
PSVersion                      7.2.6
PSEdition                      Core
GitCommitId                    7.2.6
OS                             Microsoft Windows 10.0.19044
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

The behavior is not module specific. It has to do with the load state of the module. Any module not loaded in the current session will have missing syntax information when you specify more than one module.
The work around is to import the module or run Get-Command on one module at a time.
The questions are:

Is this by design?
Is it worth changing/fixing?

cc: @theJasonHelmick

@Raton-Laveur and @sdwheeler - thank you for reporting this issue. The Working Group discussed this and we think that this is a bug.  The expected behavior should be that the syntax is displayed.

After further review, I think this is a formatting issue when you specify more than one module.
You can work around this by piping to Format-List.
Get-Command -Module powershellget,packagemanagement -Syntax | Format-List

@theJasonHelmick I'm afraid we need to review this issue again. It seems it's by design that Get-Command -Module doesn't load all modules when multiple modules are specified. So, Get-Command -Module A will attempt to load A if it's not loaded yet, but Get-Command -Module A, B, C will not attempt to load those modules, but will just use module analysis cache to get the commands exposed from those modules.
I think this is because the former is considered deterministic, but the latter is considered informational where the user cares more about the existence of a command. The same also goes to Get-Command -All [-syntax], which outputs command from all modules in the module path but doesn't load any of them.

@daxian-dbw I feel that this is by design and should perhaps be documented instead of changing behaviour here.
However, by relying on the ModuleAnalysisCache perhaps this could be streamlined only to pull back from the latest version of each of the list of modules given
Especially if you were to do this with the Graph/Az modules and have multiple versions of them installed due to the messy dependencies of other modules they have

Move the issue to WG-Cmdlet group to review.

The @PowerShell/wg-powershell-cmdlets discussed this and agree to keep the current behavior and document it.  The workaround would be to explicitly import the modules.