2024年4~7月のクラスメソッドグループ社員によるOSSコントリビュートについてご紹介します

2024年4~7月のクラスメソッドグループ社員によるOSSコントリビュートについてご紹介します

Clock Icon2024.07.22

リテールアプリ共創部@大阪の岩田です

これまでCX事業本部という部署でOSSのコントリビューション実績を取りまとめて情報発信していたのですが、この7月から組織変更の兼ね合いでCX事業本部という部署がいくつかの部署に分かれることになりました。これに伴ってOSSコントリビューション実績紹介の取り組みの範囲を広げ、今後はクラスメソッドグループ全体のコントリビューション実績という形で情報発信していこうと思います!!

それではさっそく内容を紹介していきます!

OSSコントリビューション実績一覧

devio-extensionのpackage.jsonに記載漏れがあったのを修正

devio-extensionは本ブログサイトの執筆環境をサポートするVS CodeのExtensionです。ソースコード等以下のリポジトリで公開されています。

https://github.com/classmethod/devio-extension

package.json に依存ライブラリの記載漏れがあったところをふじいさんが修正しています

https://github.com/classmethod/devio-extension/pull/8

protoのpackageバージョン認識を改善

こちらはビョンヒョンさんによるコントリビューションです。

https://github.com/moonrepo/proto/pull/485

様々なランタイムやパッケージのバージョンマネージャであるprotoがパッケージのバージョンを判定するときにvから始まるバージョン名を正しく解釈できていなかったのを修正しています。issueの起票からPRまで一貫して対応されています。

https://github.com/moonrepo/proto/issues/483

Playwrightのcliオプションでworker数を指定するときのバリデーションを追加

こちらもビョンヒョンさんによるコントリビューション実績です。

https://github.com/microsoft/playwright/issues/31208

E2Eテストに人気のPlaywrightですが、cliオプションからworker数を指定する際に数字としてパースできない文字列でも指定できる状態でした。このPRによって空文字列や英字を指定した場合は例外がthrowされるようになり、意図せぬ設定でテストが実行されてしまうことを抑止できるようになりました。

こちらもissueの起票からPR作成まで一貫して対応されています。

https://github.com/microsoft/playwright/pull/31210

CDKでApiGatewayのConstructに関する注意点をドキュメントに注記

みんな大好きCDKに対する塚本さんのコントリビューションです。

CFnのリソース数上限に抵触することなどを目的にApiGateway関連のコンストラクタをスタック分割することがありますが。スタックを分割するとAPI Gatewayのデプロイメントが自動作成されないという注意点をドキュメントに追記しています。

https://github.com/aws/aws-cdk/pull/29691

この注意点の詳細については以下のブログが詳しいです

https://dev.classmethod.jp/articles/pitfalls-and-solutions-for-cdk-api-gateway-lambda-stack-splitting/

業務でハマったことをアウトプットしつつOSSにも還元する。いかにもクラメソらしい対応ではないでしょうか?

NocoBaseの起動時にエラーが発生する問題を修正

ここからは栁澤さんによるNocoBaseに関連するコントリビューションが2つ続きます。まず1つ目ですがrunAsCLIの引数にoptionを指定しないとCannot read properties of undefinedのエラーが発生する問題を修正しています。optionという引数は必須ではないので、オプショナルチェーンを利用することで問題を回避しています。

https://github.com/nocobase/nocobase/pull/4006

NocoBaseワークフローにおいて正常に機能していないオプションを報告

栁澤さんによるNocoBase関連コントリビューションの2つ目です。ワークフローにおいて正常に機能していないオプションを報告するissueを起票しています。

https://github.com/nocobase/nocobase/issues/4333

その後メンテナの方が以下のPRで修正してくれたようです。

https://github.com/nocobase/nocobase/pull/4334

AWS X-Ray SDK for Node.jsのタイポ修正

AWS X-Ray SDK for Node.jsのREADMEに軽微な誤りがあったので、が修正のPRを挙げたものです。これで「READMEの手順をコピペしたのに動かない!」ということが無くなったはずです

https://github.com/aws/aws-xray-sdk-node/pull/640/

InsomniaでSocksプロキシを指定する手順の不備を修正

こちらも私のコントリビューション実績です。

APIクライアントとして人気のInsomniaですが、Socksプロキシの指定に関するドキュメントに記載ミスがありました。

何度かブログでも紹介されている通りクラスメソッドではIP制限のかかったサイトにアクセスするためにSocksプロキシを利用しています。

https://dev.classmethod.jp/articles/setup-socks-using-delegate/

私とが同じプロジェクトのメンバーがIP制限のかかったAPIエンドポイントに対してInsomiaでテストしようしていたのですが、なかなかうまくいかず四苦八苦していました。設定を確認させてもらうとsocks4hというスキームが指定されていたので、そこを修正することで問題なくテストが実施できるようになりました。socks4hというスキームの出どころを確認するとInsomniaのドキュメントにそのような記載があったとのことで、ドキュメントの誤りを修正しています。

https://github.com/Kong/insomnia-docs/pull/205

余談ですがInsomniaのコントリビューターになるとCredlyでバッヂがもらえるようです!

https://www.credly.com/badges/aac328e0-d687-4fff-8861-4b86e1dbdcb6

まとめ

今回は以上になります。

旧CX事業本部以外のメンバーからもコントリビューション実績を共有してもらえて良かったです。

今後はコントリビューション実績が多すぎて四半期毎の報告だと追いつかなくなる。そんなうれしい悲鳴が上がれば良いなとか妄想しています。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.