※このブログはHow to Migrate Alexa-Hosted Skills from Node.js 8.10 to Node.js 10.xの翻訳です。
編集メモ:このブログでは、Alexa-hostedスキルをNode.js 8.10からNode.js 10.xに移行する方法について説明します。独自にホスティングしているスキルをNode.js 8.10からNode.js 10.xに移行するには、 こちらの投稿を参照してください。
2019年末にNode.js 8.10のEOL(サポート終了)についてAWSからメールを受け取ったか、Node.js 10.xへの移行に関する通知が開発者コンソールに表示されたかと思います。Node.js 8.10は2019年12月31日にEOLを迎えたため、今後はNode.jsコミュニティによるバグ修正、セキュリティ更新、またはパフォーマンス改善のサポートはなくなります。2020年2月6日以降、Node.js 8.10を使用しているAWS Lambda関数の更新ができなくなります。つまり、コードはこの日付以降も実行され続けますが、新しい機能を追加したり、バグを修正したりすることはできません。
Alexa-hostedスキルはAWSを使用してスキル用のバックエンドリソースをプロビジョニングします。そのため、2019年末以前に作成されたスキルは移行する必要があります。2020年に作成されたすべてのAlexa-hostedスキルは、既にNode.js 10.xを使用しています。Node.js 8.10で実行されている既存のAlexa-hostedスキルの移行は、1月下旬に開始される予定です。スキルを移行する準備ができたら、開発者コンソールのスキルのコードタブに通知バナーが表示され、次回スキルコードをデプロイするときにNode.js 10.xへのアップグレードが自動的に行われます。
移行しないことを選択した場合、スキルは引き続きNode.js 8.10で実行されます。ただし、通知バナーが表示された後は、Node.js 10.xにアップグレードせずにスキルのコードを変更することはできません。
Node.js 10.xのほとんどはマイナーなアップデートです。つまり、Node.jsのバージョンの変更を見て、コードがEOLのAPIを使用していないことを確認する必要があります。Node.jsブログ(英語)で、廃止予定の機能と注目すべきアップデートの一覧を確認できます。次のAPIはEOLを迎えました。
スキル開発者が注目すべきアップデート:
ランタイムを変更するときは、EOLのAPIを変更する必要があります。EOLのAPIへの参照を削除したら、コードを保存して再デプロイします。Node.js 10.xに移行されたスキルをテストして、以前と同じように動作していることを確認します。これらの手順を終えたら、移行は完了です。
ASK CLIを使用している場合は、次の手順を実行する必要があります。
アップグレードで予期しない問題が発生した場合は、Alexa開発者向け問い合わせ窓口からご連絡ください。