PowerShell 7 RC 3 está disponível com as seguintes alterações
A Microsoft está lançando uma nova versão da linguagem de script PowerShell de última geração. Usuários interessantes podem obter o PowerShell 7 Release Candidate 3. Ele contém uma série de novos recursos e muitas correções de bugs da comunidade e da equipe do PowerShell.
PowerShell é uma forma avançada de prompt de comando. Ele é estendido com um grande conjunto de cmdlets prontos para uso e vem com a capacidade de usar o .NET framework / C # em vários cenários. O Windows inclui uma ferramenta GUI, PowerShell ISE, que permite editar e depurar scripts de uma forma útil.
PowerShell 7 é o primeiro shell de linha de comando e pacote de linguagem de script baseado no .NET Core 3.0. Pode atingir compatibilidade com 90 +% da caixa de entrada do Windows Módulos do PowerShell, aproveitando as alterações no .NET Core 3.0 que trazem de volta muitas APIs exigidas pelos módulos criados no .NET Framework para que funcionem com o .NET Core tempo de execução.
A Microsoft espera a disponibilidade geral do PowerShell 7 em janeiro como seu primeiro lançamento de manutenção de longo prazo.
Entre o Release Candidate e a Disponibilidade Geral, a Microsoft aceitará apenas correções de bugs críticos e nenhum novo recurso será incluído. Para esse lançamento, alguns Recursos Experimentais será considerado estável de design e não mais Experimental. Isso significa que quaisquer alterações de design futuras para esses recursos serão consideradas uma alteração significativa.
Principais recursos do PowerShell 7
- .NET Core 3.1 (LTS)
ForEach-Object -Parallel
- Wrapper de compatibilidade do Windows
- Notificação de nova versão
- Nova visualização de erro e
Get-Error
cmdlet - Operadores de cadeia de dutos (
&&
e||
) - Operador ternário (
uma? b: c
) - Atribuição nula e operadores de coalescência (
??
e??=
) - Plataforma cruzada
Invoke-DscResource
(experimental) -
Out-GridView
,-Mostrar janela
e outros cmdlets GUI legados estão de volta ao Windows
O que há de novo no PowerShell 7 RC 3
Quebrando mudanças
- Consertar
Invoke-Command
falta de erro no encerramento da sessão (#11586)
Atualizações e correções de mecanismo
- Atualize o mapa entre as cores do console para
VT
sequências (#11891) - Corrigir erro de comunicação remota SSH na plataforma Windows (#11907)
- Restaure o
PowerShellStreamType
enum
com umObsoleteAttribute
(#11836) - Lidar com casos onde
CustomEvent
não foi enviado inicialmente (#11807) - Corrija como os objetos COM são enumerados (#11795)
- Consertar
NativeDllHandler
para não jogar quando o arquivo não for encontrado (#11787) - Restaurar
SetBreakpoints
API (#11622) - Não passe desnecessariamente
-l login_name
ou-p porta
parassh
(#11518) (Obrigado @LucaFilipozzi!) - Correção para
JEA
função do usuário na conta virtual (#11668) - Não resolva tipos de assemblies que são carregados separadamente
AssemblyLoadContext
(#11088)
Atualizações e correções gerais de cmdlet
- Sincronizar diretório atual em
WinCompat
sessão remota (#11809) - Adicionar
WinCompat
negar suporte de lista usando uma configuração empowershell.config.json
(#11726) - Corrija o corte desnecessário da linha, resultando em índice incorreto com
ConciseView
(#11670)
Limpeza de código
- Mudar o nome de
ClrVersion
parâmetro de volta para reverter a mudança na capitalização (#11623)
Ferramentas
- Atualizar o script de geração do changelog (#11736) (Obrigado @xtqqczze!)
- Atualizar para
CredScan v2
(#11765)
Testes
- Certifique-se de testar se pulamos um teste usando lógica consistente (#11892)
- Pular a criação do diretório no teste de raiz no macOS (#11878)
- Atualizar
Get-PlatformInfo
auxiliar e testes para Debian 10, 11 e CentOS 8 (#11842) - Certifique-se de estar correto
pwsh
é usado para testes (#11486) (Obrigado @iSazonov!)
Melhorias na construção e embalagem
- Adicionar
LTSRelease
valor demetadata.json
pararelease.json
(#11897) - Ressalto
Microsoft. ApplicationInsights
a partir de2.12.1
para2.13.0
(#11894) - Faça com que o pacote LTS nem sempre seja uma prévia (#11895)
- Ressalto
Sistema. Dados. SqlClient
a partir de4.8.0
para4.8.1
(#11879) - Mudar
LTSRelease
valor emmetadata.json
verdadeiro paraRC.3
lançamento (interno 10960) - Atualizar
LTS
lógica para depender demetadata.json
(#11877) - Definir o valor padrão de
LTSRelease
para falso (#11874) - Refatorar pipeline de empacotamento (#11852)
- Certificar-se de que
LTS
pacotes têm links simbólicos parapwsh
epwsh-lts
(#11843) - Ressalto
Microsoft. PowerShell. Nativo
a partir de7.0.0-rc.2
para7.0.0
(#11839) - Atualize a geração do pacote NuGet para incluir
cimcmdlet.dll
e a maioria dos módulos integrados (#11832) - Ressalto
Microsoft. PowerShell. Arquivo
a partir de1.2.4.0
para1.2.5
(#11833) - Ressalto
PSReadLine
a partir de2.0.0-rc2
para2.0.0
(#11831) - Adicionar fonte de rastreamento e primitivas de serialização à lista de montagem permitida (interno 10911)
- Atualize o
NextReleaseTag
para ser v7.0.0-preview.7 (#11372) - Mude a embalagem para produzir
LTS
pacotes (#11772) - Construa pacotes tar apenas ao compilar no Ubuntu (#11766)
- Ressalto
NJsonSchema
a partir de10.1.4
para10.1.5
(#11730) - Corrigir a criação de link simbólico em
packaging.psm1
(#11723) - Ressalto
Microsoft. ApplicationInsights
a partir de2.12.0
para2.12.1
(#11708) - Ressalto
NJsonSchema
a partir de10.1.3
para10.1.4
(#11620) - Mover para as imagens mais recentes do agente Azure DevOps (#11704)
- Ressalto
Markdig. Assinado
a partir de0.18.0
para0.18.1
(#11641)
Documentação e conteúdo de ajuda
- Adicionar links para diffs no Github no changelog (#11652) (Obrigado @xtqqczze!)
- Corrigir falha de teste de link de redução (#11653) (Obrigado @xtqqczze!)
O PowerShell 7 é uma versão “go live”, o que significa que é oficialmente compatível com a produção até o lançamento do PowerShell 7 General Availability (GA) no próximo mês.
Fonte: Microsoft