--- lang: ja-jp breaks: true --- # GitHub Packages に GraphQL でアクセスする 2022-08-02 ## 2022年8月18日に、GraphQLが廃止となりREST APIを使えとのお達しあり > Deprecation Notice: GraphQL for Packages > https://github.blog/changelog/2022-08-18-deprecation-notice-graphql-for-packages/ :::warning GitHub Packagesが再プラットフォーム化され、きめ細かいパーミッション、組織レベルの公開、パフォーマンスの向上など、素晴らしい機能が解放されました。 新しい GitHub Packages アーキテクチャのパッケージレジストリ(コンテナレジストリや npm パッケージを含む)は GraphQL API を通じてデータを公開しなくなりました。代わりに REST API を使用することをお勧めします。 今後数ヶ月のうちに、他の GitHub パッケージレジストリをこの新しいアーキテクチャに移行し、それらのレジストリの GraphQL API も非推奨とする予定です。 ご不明な点がございましたら、GitHub サポートまでお問い合わせください。 ::: :::danger 2022-11-30日現在GraphQLでパッケージバージョンリストを取得すると、直近で発行したパッケージの情報が取得出来なくなった。。。 ::: # 以下、当時のメモ書き > GraphQL API > [GitHubのGraphQL API - GitHub Docs](https://docs.github.com/ja/graphql) > Package > https://docs.github.com/ja/graphql/reference/objects#package > PackageConnection > https://docs.github.com/ja/graphql/reference/objects#packageconnection > PackageFile > https://docs.github.com/ja/graphql/reference/objects#packagefile > PackageFileConnection > https://docs.github.com/ja/graphql/reference/objects#packagefileconnection > ## GitHub GraphQL API のスキーマ定義ファイル > パブリックスキーマ > https://docs.github.com/ja/graphql/overview/public-schema #### スキーマファイルを検索するコツ `type Query` `viewer:` `type User` ## スキーマファイルからのC#ソースコードの生成 > Schema Generation > https://graphql-dotnet.github.io/docs/guides/schema-generation/ > GraphQL.Tools > https://github.com/MoienTajik/GraphQL.Tools :::info `GraphQL.Tools`では、`schema.docs.graphql` から生成することはできなかった。シンタックスエラーとなる。 ::: > Strawberry Shake > https://chillicream.com/docs/strawberryshake#introduction > dotansimha/graphql-code-generator > https://github.com/dotansimha/graphql-code-generator :::info [Home – GraphQL Code Generator (graphql-code-generator.com)](https://www.graphql-code-generator.com/#live-demo) ここに、`schema.docs.graphql` 貼り付けるととりあえずC#のソースが生成された。 ただし以下のビルドエラーが発生する。 * `union`に関するソースが生成されずにビルドエラーとなる。 * object型が`Any`として出力されるためビルドエラーとなる。 ::: ###### tags: `GitHub Packages` `GraphQL`