2020年の OSS 活動ふりかえり

年末なので

issue

https://github.com/issues?q=is%3Aissue+author%3Aodanado+archived%3Afalse+-user%3Aodanado+-user%3Aodan-sandbox を眺める

Can't lint .ts files when use vue-eslint-parser · Issue #864 · microsoft/vscode-eslint

  • vscode-eslint の v2 がリリースされた次の日に発生した不具合を報告した issue
  • vue-eslint-parser を使っていると .ts ファイルが lint されなくて困っていた
    • 英語がまずかったのか問題の意図を伝えるのが大変だった...

/static/bootstrap/css/bootstrap.min.css が 404 · Issue #13 · perl-users-jp/perl-users-jp.github.io

  • 会社で perl-users-jp の改修やってるって話を聞いてコントリビュートしたやつ

https なサイトでプルリクの内容をプレビューしたい · Issue #24 · perl-users-jp/perl-users-jp.github.io

VTI Error: Cannot find module · Issue #1732 · vuejs/vetur

  • VTI は VSCode の Vue.js 向けの拡張機能である vetur の CLI ツールのこと
  • リリースされて、これは!ってなって即試したらなんかエラーが出たので issue を立てたやつ

Using an index type generates an object type · Issue #646 · nestjs/swagger

  • nestjs/swagger は会社で使っていて、その中であれ?って思う挙動があったので issue を立ててみたやつ
  • 実際は仕様で close された

A type of web3-eth is incorrect · Issue #3483 · ethereum/web3.js

  • JS だと default export されているクラスが、TS だと named export されていて立てた issue
  • 明らかにバグだけど影響範囲とかあるので、このままらしい
  • TS で web3.js を使うとたびたびつらい思いをする

TravisCI is failing · Issue #387 · GoogleChrome/rendertron

  • prerendering を試してみたくて rendertron の素振りをしていたんだけど、どうやらずっと CI が落ちているみたいで立てた issue
    • この後 CI をグリーンにするプルリクも投げた
  • CI が red なまま開発する OSS もあるんだなあってちょっとびっくりした
  • テストで GCP にあるプロジェクトの DB を参照していて、なるほどなとなった
  • 今見たら GitHub Actions になってた

Add an option to disable repos.createCommitComment · Issue #126 · nwtgck/actions-netlify

  • actions-netlify は GitHub Actions から Netlify にデプロイするやつ
  • デプロイするたびにコメントがついてメールが来ていたので、無効化するオプションがほしいと思って issue を立てた

account.hashMessage is incorrect with non-ASCII characters · Issue #3523 · ethereum/web3.js

  • ASCII に含まれない文字を関数に渡すと正しく処理されないバグ
  • "🤗".length は 2 だが、Buffer.from("🤗", "utf8").length は 4 なことに起因するバグだった
  • 文字コード難しいね

エラー発生時にユーザーにエラーが発生したことを伝える · Issue #20 · mak4026/splathon_ladder_web

  • スプラトゥーンのコミュニティの Web アプリで、エラーが発生していることがユーザーに届かない仕組みだったので issue 立てた
  • このあとプルリクも投げた

createAt/updateAt is of different types for CSR and SSR · Issue #114 · nuxt/content

  • nuxt/content がリリースされて、すぐ試したらバグを踏んで issue 立てたやつ
  • Date オブジェクトが JSON に変換されるときに文字列になるんだけど、その時の方式がブラウザと node.js で異なるのが原因だった気がする

generate sitemap.xml · Issue #386 · nuxt/content

commit lock file for PetAdoptions/cdk/pet_stack · Issue #28 · aws-samples/one-observability-demo

  • Observability に興味があって、AWS の workshop を試していたんだけど、サンプルコードに lock file がなくて動作せず、lock file を push してくれという issue を立てたやつ
  • 反応ないし、似た問題を抱えている人もいないのでみんな困ってないのかな

The Japanese translation of creating-a-composite-run-steps-action.md is wrong · Issue #751 · github/docs

  • GitHub のドキュメントの日本語ページの code block とかがすごい壊れていたので issue を立てたやつ
  • 手動で直してプルリクを投げようかなって思ったけど、どうやら自動翻訳らしく issue 立てるだけで良かった
  • 今見ても日本語ページ壊れてるしいつ直るのかな...

truffle-v5: Some properties of Truffle.ContractInstance are missing · Issue #315 · ethereum-ts/TypeChain

  • TypeChain が生成する型のプロパティが不足していたので立てた issue
  • そのうちプルリクも投げる予定

プルリク

https://github.com/issues?q=is%3Apr+author%3Aodanado+archived%3Afalse+-user%3Aodanado+-user%3Aodan-sandbox を眺める (飽きてきたのでピックアップするだけ...)

DefinitelyTyped 系

  • 今年初めて DefinitelyTyped にプルリク投げたし、@types/keccak は初の Author な型定義になった
  • 今見たら週間 3000 Downloads ぐらいあるらしく嬉しい

ethereum/web3.js: Ethereum JavaScript API

  • web3.js の provider は構造的部分型を考えると send メソッドを持っていればいいんだけど、型定義がそうじゃなかったのでプルリク投げた

feat(markdownit): add types of $md by odanado · Pull Request #376 · nuxt-community/community-modules

  • 型定義がなかったので投げたやつ
  • 先に issue 立ててお伺いを立ててからのほうが良かったかな

docs: add comma by odanado · Pull Request #2533 · vuejs/vetur

  • Vetur の新しいバージョンがドキュメントと共にリリースされたんだけど、ドキュメント中のコードが文法的に invalid だったので修正のプルリクを投げたやつ

まとめ

  • 新しいツールとか新しいバージョンの OSS は結構狙い目
    • 仕事とかで普段使っている OSSwatch しておくと、新しいバージョンに気付けるので良い
  • 来年も仕事で使っている OSS に不具合を見つけたら issue 立てたりプルリク投げたりしたい