PHPの、新しいExtension Installer・・・PIE!
php/pie: The PHP Installer for Extensions
そして、このツールで導入できる拡張たちは、Packagist上で検索やメタ情報の取得ができます。
・・・となれば、興味が湧くのは「ここで、どんな情報が扱われているのか」ですよね✨️
また、従来からPackagistで扱われていたComposerパッケージのそれとは、なにか違うのでしょうか?
更に言えば、ここで取得された情報は、どんな役割を果たして、PIEによるインストールのプロセスに役立っているのでしょうか??
この記事では、「PIEをどう使うか」「どう活用・運用していくか」といったトピックには重きを置かずに、
「レポジトリ(Packagist)の提供するAPIとして、どうなっているの?」といった内部事情・詳細部分にフォーカスを当てた、
ちょっとニッチな話題を扱います。
Language Server Protocol (LSP)は、2016年にMicrosoftが発表したJSON-RPCベースのプロトコルです。
LSPはモダンなテキストエディタなら必ずある機能(例: 定義ジャンプ)を提供していますが、一番の魅力は特定のテキストエディタに依存しない形での実装になっていることです。
これにより各テキストエディタでの実装の必要がなくなり、エディタ選択の自由度が飛躍的に高まりました。
PHPの言語サーバ実装はintelephenceとPhpactorがメジャーです。
本登壇ではPhpactorの実装に触れつつ活用テクニックを紹介していきます。