MicrosoftよりPowershell 2.0の具体的な廃止のスケジュールが発表された

Microsoftより、Powershell 2.0の具体的な廃止のスケジュールが発表された。これによると、2025年8月(今月)~9月(来月)には、Windows11 24H2から削除されるという。

「PowerShell 2.0」は間もなく削除、今月~来月の更新で ~Windows 11 バージョン 24H2/Server 2025で
https://forest.watch.impress.co.jp/docs/news/2039392.html

基本的に、Powershell 5.1がWindows11 24H2にあるので、Powershellがなくなるということはない。けれど、Powershell2.0で明示的に動かしている場合や廃止されているコマンドレットを使っていると動かなくなる。

Powershellを別のバージョンに移行するとして、候補がPowershell 5.1(Windows Powershell 5.1)か、Powershell 7系だ。2つの違いは、Windows Powershell 5.1が.NET Framework 4.8で動作、Powershell 7系が、.NET(.NET core)で動作、ベースになる環境が異なる。この先を考えるならば、Powershell 7系がいいのだろうけれど、ベースになる.NETはLTSで3年のサポートなので、LTSがリリースされる2年ごとにバージョンを上げていくことになる。互換性はあるから大丈夫なんだろうけれど、ベースの.NETの入れ替えは必要になる。

Windows PowerShell 5.1 と PowerShell 7.x の相違点
https://learn.microsoft.com/ja-jp/powershell/scripting/whats-new/differences-from-windows-powershell?view=powershell-7.5

なんとも悩ましい。割り切って、Powershell 7系に乗り換えて、定期的にアップグレードしていくのがいいのだろうけれど。

公式サンプルのソースコードであっても、信じてはいけないという話

Microsoftの公式サンプルのソースコードであっても、信じてはいけないという話。サンプルコードを使うと、Windowsのメモリ不足を引き起こすかもしれないという。

Windowsのメモリ不足、公式サンプルコードのコピーだけで発生する可能性 https://news.mynavi.jp/techplus/article/20250526-3333822/

多くの場合、メモリ不足は無限にメモリを消費するプログラムのバグが原因で引き起こされる。今回の例もプログラムのバグを原因とするが、公式のサンプルコードをコピーしただけで発生するという。

かなり無理に近いけれど、公式サンプルをコピペして使う場合でも、その設定内容や何を行っているのか、を理解した上(理解しょうとした上)で使わないといけないわけだ。昔は、そういうのを信じるな、と言われたものだが。公式のサンプルコードくらいは信用したかった。今後は、生成AIが生成したコードがそれにあたるのだろう。その場合は、別の複数のAIにチェックさせて、合議する感じだろうか。もしくは人でチェックか。どちらにしても、最終的には、採用した(そのコードを使った)人の責任なわけだ。