IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Logiciels Libres & Open Source Discussion :

Microsoft annonce la disponibilité générale de la version finale de PowerShell 7 pour Windows, macOS et Linux


Sujet :

Logiciels Libres & Open Source

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Rédacteur technique
    Inscrit en
    juin 2016
    Messages
    1 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : juin 2016
    Messages : 1 944
    Points : 41 199
    Points
    41 199
    Par défaut Microsoft annonce la disponibilité générale de la version finale de PowerShell 7 pour Windows, macOS et Linux
    La RC1 de PowerShell 7.0 est disponible avec un support à long terme (LTS) pour .NET Core 3.1
    l’opérateur ternaire « a ? b : c », l’opérateur d'affectation et de coalescence nulle « ?? et ??= »

    Microsoft a annoncé cette semaine qu’après plusieurs aperçus pour PowerShell 7.0, une première release candidate (RC) est disponible, avant la sortie officielle de PowerShell 7.0 prévu pour le mois prochain. La RC1 de PowerShell 7.0 introduit de nouvelles fonctionnalités à l’outil en ligne de commande de Microsoft, notamment le support à long terme (LTS) de .NET Core 3.1, l’opérateur ternaire « a ? b : c », l’opérateur d'affectation et de coalescence nulle « ?? and ??= » et une version expérimentale de Invoke-DscResource multiplateforme.

    PowerShell 7.0 intègre le support LTS de .NET Core 3.1

    Microsoft a publié .NET Core 3.1 au début de ce mois, deux mois après avoir publié .NET Core 3.0. Microsoft a précisé qu'il s'agit essentiellement d'un petit ensemble de corrections et d’améliorations apportées à .NET Core 3.0. Les modifications apportées à .NET Core 3.1 concernaient principalement Blazor et Windows Desktop. Cela inclut la prise en charge de C ++/CLI, une demande habituelle des développeurs ciblant Windows. L’entreprise a également précisé qu’il s’agit d’une version prise en charge à long terme (LTS).

    Microsoft en a aussi amélioré l’expérience de travail avec .NET Core 3.0 et 3.1 dans PowerShell 7.0. « Nous avons travaillé plus étroitement que jamais avec l'équipe .NET, non seulement avec les prévisualisations .NET Core 3.0 et 3.1, mais en travaillant main dans la main avec les développeurs .NET pour améliorer la performance de PowerShell. Comparé aux années passées où le passage à des versions de .NET pouvait être un processus fastidieux, le passage de .NET Core 2.1 à 3.0 est relativement facile, et le passage à 3.1 est totalement indolore », a-t-il déclaré.

    Nom : PowerShell_Microsoft-1.jpg
Affichages : 1467
Taille : 12,9 Ko

    Image du conteneur Docker du SDK .NET pour PowerShell 7.0

    À partir de .NET Core 3.0, l'équipe .NET a commencé à inclure PowerShell Core dans ses images du docker SDK .NET. Selon Microsoft, c'est idéal pour n'importe quel développeur .NET Core développant des applications multiplateformes, lui permettant d'écrire ses scripts de construction, de test et de déploiement dans un seul langage de script (PowerShell), et indépendamment de la plateforme ou du fait qu'ils fonctionnent localement ou dans une solution CI/CD comme Azure Pipelines. Les images du SDK .NET Core 3.1 seront mises à jour avec le RC de PowerShell 7.0 lors de leur prochaine sortie régulière en janvier.

    L’outil global .NET

    L’outil global .NET est un moyen facile d'installer des paquets NuGet spéciaux en tant qu'applications complètes pour les utilisateurs qui ont déjà le SDK .NET installé sur leurs machines. Il vous suffit d’exécuter la commande « dotnet install --global powershell » sur n'importe quel système d’exploitation et vous obtiendrez un binaire pwsh à exécuter dans votre environnement. De plus, Microsoft a ajouté que vous pouvez également mettre à jour vers de nouvelles versions tout aussi facilement avec la commande « dotnet --global powershell ».

    Comme pour les images de conteneurs SDK, l’outil global pour PowerShell 7.0 RC est déjà disponibles. Cependant, notez qu'en raison de la façon dont le versionnage fonctionne dans NuGet, vous devrez utiliser cette commande d'installation spécifique jusqu'à ce que la version stable de PowerShell 7.0 soit publiée : « dotnet tool install --global PowerShell --version 7.0.0.0-rc.1 ». Si vous effectuez une mise à niveau à partir d'une installation antérieure d'un outil global, utilisez : « dotnet tool update --global PowerShell --version 7.0.0.0-rc.1 ».

    En attendant la sortie de la version stable de PowerShell 7.0 en janvier prochain, voici un bref aperçu de certains des éléments les plus intéressants que Microsoft propose dans PowerShell 7.0.

    • NET Core 3.1 (LTS) ;
    • enveloppe de compatibilité Windows ;
    • notification de nouvelle version ;
    • nouvelle vue d'erreur et cmdlet Get-Error ;
    • opérateurs de chaîne de pipeline (&& et |||) ;
    • opérateur ternaire (a ? b : c) ;
    • opérateurs d'assignation nulle et de coalescence ( ??? et ??=) ;
    • invoke-DscResource multiplateforme (expérimental) ;
    • out-GridView, -ShowWindowWindow et autres cmdlets de l'interface graphique sont de retour sous Windows ;
    • etc.


    Sources : Microsoft, GitHub

    Et vous ?

    Qu'en pensez-vous ?

    Voir aussi

    .NET Core 3.0 est disponible avec le support du développement d'applications Windows Desktop, C# 8.0, ARM64, une prise en charge JSON intégrée rapide et de nombreuses autres améliorations

    .NET Core 3.1 est disponible, il s'agit d'une version prise en charge à long terme (LTS) qui apporte des corrections et des améliorations à .NET Core 3.0

    Microsoft évoque le futur de C++/CLI et de .NET Core : C++ sera disponible sur .NET Core 3.1 pour Windows

    Pourquoi devez-vous faire usage de .NET Core 3.0 pour le développement d'applications de bureau Windows ? Microsoft se penche sur les avantages de cette approche
    Contribuez au club : corrections, suggestions, critiques, ... Contactez le service news et Rédigez des actualités

  2. #2
    Chroniqueur Actualités
    Avatar de Patrick Ruiz
    Homme Profil pro
    Redacteur web
    Inscrit en
    février 2017
    Messages
    1 220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Redacteur web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : février 2017
    Messages : 1 220
    Points : 36 890
    Points
    36 890
    Par défaut Microsoft annonce la disponibilité générale de la version finale de PowerShell 7 pour Windows, macOS et Linux
    Microsoft annonce la disponibilité générale de la version finale de PowerShell 7 pour Windows, macOS et Linux
    Avec un support à long terme pour .Net Core 3.1 parmi les nouveautés

    L’annonce est tombée il y a peu via un billet de blog de Microsoft : la version finale de PowerShell 7 est disponible pour Windows, macOS et Linux. Cette dernière introduit des nouveautés liées à la prise en charge de .Net Core et de nouveaux opérateurs. De façon brossée, PowerShell 7 signifie : migration de .Net Core 2.x à 3.1 et introduction des opérateurs ternaire « a ? b : c », d’affectation et de coalescence nulle « ?? and ??= ».

    Le passage de .Net Core 2.x à 3.1 permet une plus grande compatibilité avec les modules PowerShell existants pour Windows. « Si vous n'avez pas pu utiliser PowerShell Core 6.x dans le passé en raison de problèmes de compatibilité entre les modules, c'est peut-être la première fois que vous pourrez profiter de certaines des fonctionnalités géniales que nous avons déjà fournies depuis le début du projet PowerShell Core ! », souligne Microsoft qui ajoute que « le passage de PowerShell Core 6.x à 7.0 marque également notre passage de .NET Core 2.x à 3.1. NET Core 3.1 ramène une foule d'API de .NET Framework (en particulier sous Windows), ce qui permet une compatibilité ascendante beaucoup plus importante avec les modules PowerShell existants de Windows. Cela comprend de nombreux modules sous Windows qui nécessitent des fonctionnalités d'interface graphique comme Out-GridView et Show-Command, ainsi que de nombreux modules de gestion des rôles qui sont livrés avec Windows. »

    La liste complète des systèmes d'exploitation pris en charge est donnée sous forme de variantes x64 de Windows 7, 8.1 et 10, Windows Server 2008 R2, 2012, 2012 R2, 2016 et 2019, macOS 10.13+, Red Hat Enterprise Linux (RHEL) / CentOS 7+, Fedora 29+, Debian 9+, Ubuntu 16.04+, openSUSE 15+ et Alpine Linux 3.8+. Les saveurs ARM32 et ARM64 de Debian et Ubuntu sont également prises en charge, de même que ARM64 Alpine Linux. Microsoft affirme que, bien qu'ils ne soient pas officiellement pris en charge, il existe des paquets produits par la communauté pour Arch et Kali Linux. PowerShell 7 est disponible en téléchargement sur GitHub et il existe également une documentation d'installation disponible pour Windows, macOS et Linux.

    Nom : 1.png
Affichages : 2005
Taille : 94,2 Ko

    Microsoft a déjà les regards braqués sur PowerShell 7.1 dont la première préversion sortira bientôt. En attendant d’y être retour sur les nouveautés qui font la particularité de PowerShell 7 :

    • .NET Core 3.1 (LTS) ;
    • enveloppe de compatibilité Windows ;
    • notification de nouvelle version ;
    • nouvelle vue d'erreur et cmdlet Get-Error ;
    • opérateurs de chaîne de pipeline (&& et |||) ;
    • opérateur ternaire (a ? b : c) ;
    • opérateurs d'assignation nulle et de coalescence ( ??? et ??=) ;
    • invoke-DscResource multiplateforme (expérimental) ;
    • out-GridView, -ShowWindowWindow et autres cmdlets de l'interface graphique sont de retour sous Windows ;
    • etc.

    Source : Microsoft

    Et vous ?

    Qu’en pensez-vous ?

    Voir aussi :

    .NET Core 3.0 est disponible avec le support du développement d'applications Windows Desktop, C# 8.0, ARM64, une prise en charge JSON intégrée rapide et de nombreuses autres améliorations

    .NET Core 3.1 est disponible, il s'agit d'une version prise en charge à long terme (LTS) qui apporte des corrections et des améliorations à .NET Core 3.0

    Microsoft évoque le futur de C++/CLI et de .NET Core : C++ sera disponible sur .NET Core 3.1 pour Windows

    Pourquoi devez-vous faire usage de .NET Core 3.0 pour le développement d'applications de bureau Windows ? Microsoft se penche sur les avantages de cette approche
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  3. #3
    Membre actif
    Homme Profil pro
    Consultant
    Inscrit en
    novembre 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : novembre 2013
    Messages : 20
    Points : 215
    Points
    215
    Par défaut dll hell le retour ?
    je teste du code PS directement issu de la doc Azure.
    j'ai bien toutes les dépendances satisfaites en terme de modules AZ requis
    ça marche pas. problème de dépendance manifeste, le ps appelle des trucs qu'existent pas

    Allons bon, je suis en PS 5.1, il semblerait d'après la rumeur publique qu'il faille passer en PS 7. C'est en GA depuis bientôt un mois, pourquoi hésiter ?
    Bon déjà, faut aller chercher le MSI dans un github.... GA qu'ils ont dit chez MS ?

    Bon j'installe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    PS C:\Users\damie> $PsVersionTable
    
    Name                           Value
    ----                           -----
    PSVersion                      7.0.0
    PSEdition                      Core
    GitCommitId                    7.0.0
    OS                             Microsoft Windows 10.0.18363
    Platform                       Win32NT
    PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
    PSRemotingProtocolVersion      2.3
    SerializationVersion           1.1.0.1
    WSManStackVersion              3.0

    Mes dépendances sont toujours OK

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    PS C:\Users\damie> Get-Module -ListAvailable AzT*
    
    
        Directory: C:\Program Files\WindowsPowerShell\Modules
    
    ModuleType Version    PreRelease Name                                PSEdition ExportedCommands
    ---------- -------    ---------- ----                                --------- ----------------
    Manifest   2.0.2                 AzTable                             Desk      {Add-AzTableRow, Get-AzTableRow, Get-Az…

    C'est quoi cette mention "Desk" dans la colonne Edition ? Pour tous mes autres modules, j'ai " Core,Desk"...
    Sinon, la méthode qui est censée fonctionner d'après MS, elle est bien dans la liste des ExportedCommands (Add-AzTableRo)


    MAIS ben tu sais quoi, ça marche toujours pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    PS C:\Users\damie> Add-AzTableRow -table $storageTable -partitionKey "partition1" -rowKey "CA" -property @{"username"="Chris";"userId"=1}
    InvalidOperation: C:\Program Files\WindowsPowerShell\Modules\AzTable\2.0.2\AzureRmStorageTableCoreHelper.psm1:239
    Line |
     239 |  …      return ($Table.Execute([Microsoft.Azure.Cosmos.Table.TableOperat …
         |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         | Method invocation failed because
         | [Microsoft.WindowsAzure.Commands.Common.Storage.ResourceModel.AzureStorageTable] does not contain a
         | method named 'Execute'.
    

    malgré mes recherches, je trouve pas trace d'une version desktop de PS 7.

    Je soupçonne un problème de dépendance du module que j'utiliser, ou de PS 7, avec une version de .Net.

    OK, je travaille pas plus que ça avec les technos MS et il me manque surement quelques infos

  4. #4
    Membre actif
    Homme Profil pro
    Consultant
    Inscrit en
    novembre 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : novembre 2013
    Messages : 20
    Points : 215
    Points
    215
    Par défaut
    pfff j'ai trouvé, MS n'y est pour rien, c'est moi qui suis un boulet.
    à ma décharge, je travaille pas trop avec les technos MS, je me met au PS pour l'administration système depuis quelques temps, et je dois dire que je trouve la plateforme très intéressante, notamment par rapport au scripting linux traditionnel

    J'ai trouvé après avoir regardé le code source du module PS. Et finalement, j'avais pas bien lu la doc qui est bien à jour.
    Et j'avais pas besoin d'upgrader ma version de PS

    Quand à cette histoire d'édition Desktop ou Core, ça revient en fait à identifier une version windows (desk) basée sur .Net Framerk d'une version multiplateforme (core) basée sur .net core.
    Ceci dit, cette histoire d'édition et de compatibilité de module avec telle ou telle édition a pas l'air totalement claire (mais bon c'est compréhensible à ce stade du déploiement de .net core).

Discussions similaires

  1. Réponses: 0
    Dernier message: 03/09/2018, 15h33
  2. Réponses: 9
    Dernier message: 20/05/2018, 17h38
  3. Réponses: 8
    Dernier message: 21/01/2016, 23h31
  4. Réponses: 52
    Dernier message: 28/06/2012, 16h36
  5. Réponses: 0
    Dernier message: 25/01/2011, 10h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo