Microsoftが「PowerShell 7」のプレビュー版を発表、開発計画の詳細も:ライフサイクルを.NET Core 3.0と同期
Microsoftは、PowerShell Coreの次期バージョン「PowerShell 7」の最初のプレビュー版を発表、詳細な開発計画も明らかにした。.NET Core 3.0対応やWindowsとの互換性向上が特徴。
Microsoftは2019年5月30日(米国時間)、「PowerShell 7」の最初のプレビュー版を公開し、詳しい開発計画を明らかにした。
PowerShell 7は、「Windows PowerShell」のオープンソースエディション「PowerShell Core」の次期バージョン。PowerShell CoreはWindowsの他、LinuxとmacOSで動作し、コマンドラインシェルやスクリプト言語、コマンド処理フレームワークを含む。
Microsoftは2019年3月に、「PowerShell Core 6.2」の一般提供を開始するとともに、PowerShell Coreの次期バージョンの名称を、「Core」を外した「PowerShell 7」とすることを明らかにしている。
Microsoftは今回の最初のプレビュー版公開に合わせて、PowerShell 7の詳しい開発計画も明らかにした。
それによると、今後、PowerShell 7のプレビュー版をほぼ毎月のペースでリリースする。また、2019年3月の発表の通り、MicrosoftはPowerShell 7から、サポートライフサイクルを変更して「.NET Core」に合わせる。これにより、PowerShell 7の一般提供を、「.NET Core 3.0」の一般提供開始の約1カ月後に開始することになる。
PowerShell 7には次のような特徴がある。
.NET Core 3.0対応
PowerShell 7の最大の変更点は、.NET Core 3.0に対応することだ(PowerShell Core 6.2は、.NET Core 2.1に対応)。
これにより、パフォーマンスが大幅に向上するだけでなく、多くの新しいAPIが利用可能になる。その中にはWPF(Windows Presentation Foundation)や、Windows向けのPowerShellに限られるもののWindows Forms(WinForms)を含む。
Windowsとの互換性向上
PowerShell 7の開発の重要な課題は、「Windows PowerShell 5.1」の代替ソフトとして実用的に利用できるようにすることだ。そのためにはWindowsが含むモジュールとの互換性という点で、PowerShell 7がWindows PowerShellとほぼ同等にならなければならない。
PowerShellチームはWindowsチームと協力して、この課題に取り組んでいる。これに伴い、PowerShell 7を広範なWindows PowerShellモジュールとともに使う場合は、Windows 10や、対応するWindows Serverの最新ビルドを使う必要がある。
セキュアな資格情報管理の提供
クラウド、ローカル、ハイブリッドのいずれの場合でもそこに置いたリソースを自動化する場合、異なる資格情報が必要になる。PowerShellのスクリプトを使用する場合、セキュリティの観点から、資格情報をスクリプト内に含めないことが鉄則だ。
資格情報の運用を支援するため、Microsoftは、ローカルまたはリモートの資格情報ストアから、資格情報を安全に使用できる方法を導入する計画だ。
リモートへのログ転送
セキュリティに役立てるため、現行バージョンのPowerShellは、ローカルマシンにログを記録できる。ただし、リモートにログを転送しようとすると、OSごとに異なる設定が必要だ。
Microsoftは、使用するOSにかかわらず、リモートターゲットにログを自動送信できるように、PowerShellをポリシーで簡単に構成する方法を導入したいという。
新バージョンの通知機能
例えばデータ分析ツール「Power BI」を利用してユーザーのPowerShellのバージョンを管理すると、古いバージョンが見つかることもある。
Microsoftは、ユーザーがPowerShellの古いバージョンを使っている場合に、新バージョンが利用可能であることを知らせる機能を導入しようとしている。この機能についてはRFC(Request For Comments)を既に公開しており、フィードバックを募っている。
機能拡張についての意見募集
Microsoftは、3つの機能分野への投資を検討している。これらの機能の実装方法に関する計画と、解決しようとしている問題のスコープについてRFCを公開する予定だ。RFC公開後にフィードバックを募るという。
要望の多い機能
Microsoftは、同社に寄せられている多数の機能の要望に、PowerShell 7で対応しようとしている。一部の要望は実験機能として実装し、ユーザーのフィードバックを取り入れて完成させる。代表的な要望は次の通りだ。
- デフォルトのエラー書式の改善
- 連鎖コマンドの制御演算子
- 3項条件
- Null条件付き代入
- パラレルなForEach-Objectループ処理
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
Microsoft、「PowerShell Core 6.2」を公開、次期リリースは「PowerShell 7」に
Microsoftは、「PowerShell」について、オープンソースエディションの最新リリース「PowerShell Core 6.2」の一般提供を開始した。また、次期リリースの開発計画と、名称が「PowerShell 7」となる理由も明らかにした。Microsoft、「Windows Terminal」に関する質問にブログで回答
Microsoftは、2019年5月に発表したオープンソースソフトウェアのターミナルアプリ「Windows Terminal」について寄せられた質問にブログで回答した。例えば、Windows PowerShellを廃止するのかどうかといった質問だ。Microsoft、「.NET Core 3.0」の後継となる「.NET 5」を2020年にリリース
Microsoftは「.NET Core」「.NET Framework」「Xamarin/Mono」を1つに集約すると発表した。「.NET Core 3.0」の後継となる「.NET 5」は、Windows、Linux、macOS、iOS、Android、tvOS、watchOS、WebAssemblyなどに対応した開発が可能な単一のプラットフォームになる。