mottox2 blog

2019年(1-6月)のプルリクエストを振り返る

dev

今年も始まって半分が経過しました。
ブログのメンタリングをしてくれたカック@ブロガー / k9u (@kakakakakku)さんがプルリクエストの振り返り記事を出していたので、インスパイアし自分も上半期のプルリクエストについて振り返ってみることにしました。OSSコントリビュートと思えるプルリクエストは13件でした。

2019/01

gatsbyjs/gatsby

公式のブログテンプレートへのコントリビュートです。
gatsby-node.jsではブログの詳細ページを作る際にgraphql関数を利用するのですが、graphql関数の返り値はPromiseです。修正前はgraphql関数をPromiseオブジェクトでラップしていたので、チュートリアルの書き方に揃えて直接graphqlの返り値を利用することにしました。
公式テンプレートは利用者から参考にされることが多いのでこういった変更も重要です。

Improve createPages of blog starter by mottox2 · Pull Request #10781 · gatsbyjs/gatsby

上記の変更をリポジトリにある全exampleに対して行ったプルリクエストです。結構な量の変更を行ったので大変でした。

docs: remove Promise clutter from createPages by mottox2 · Pull Request #10791 · gatsbyjs/gatsby

gridsome/gridsome

Gridsomeが公式プラグインとして提供している@gridsome/source-contentfulに対してのコントリビュートです。
当時はGridsomeが登場して間もなく、source-contentfulで扱えるデータは記事データのみでした。そのデータに加え画像などのアセットも扱えるようにしたのがこのプルリクエストです。
今や日本のGridsome第一人者であるtyankatsuさんが立てたIssueとTwitterを見て取り組みました。
このPRの後でリファクタリングが行われ、より使い勝手のよいプラグインになっていきました。

feat(contentful): Add ContentfulAsset by mottox2 · Pull Request #95 · gridsome/gridsome

当時、コミュニティのサイトをGridsomeで作っており、その際にGatsbyJSの様にyamlをマスターデータとして扱いたいと思いローカルプラグインとして開発していました。
そのプラグインをGridsome本体に移動したプルリクエストです。
当時、transformer-pluginはtransformer-jsonしかなく、本体のコードを読みながら実装を進めた記憶があります。現時点でも「transformerプラグインをsourceプラグインに統合すればいいのでは?」といったRFCがあります。

feat(transformer-yaml): add transformer by mottox2 · Pull Request #133 · gridsome/gridsome

2019/03

gatsbyjs/gatsby

GatsbyJSはサイト自体のブログも本体リポジトリに同梱しています。
当時リリースされたブログ記事でリンク切れを発見し対応したプルリクエストです。

Fix broken link in blog by mottox2 · Pull Request #12541 · gatsbyjs/gatsby

2019/04

gatsbyjs/gatsby

これもブログを見ていたときのTypo修正です。
GatsbyのTwitterアカウントをフォローしていると記事が流れてくるので要チェックです。

blog: fix typo by mottox2 · Pull Request #12971 · gatsbyjs/gatsby

技術書典6で頒布した「GatsbyJS Guidebook」の執筆中に見つけたドキュメントのリンク切れの修正です。
GraphQL周りの深掘りをしているときに見つけたもので、リンク先のコードを読みながら「どう説明すべきか?」みたいなことを永遠に考えていました。
技術同人誌は本を書くステップでもコントリビュートできます!

fix(docs): Fix broken link by mottox2 · Pull Request #13193 · gatsbyjs/gatsby

zeit/next.js

Next.jsでUIフレームワークを使うサンプルを探していたところ、README.mdにリンク切れを見つけたため修正しました。

Fix broken link by mottox2 · Pull Request #7087 · zeit/next.js

2019/05

mdx-js/mdx

Next.jsアプリケーションにMDXを組み込む際に、ドキュメントに書いてあったリポジトリを見たら「This repo is now deprecated」となっていました。
そこで推奨されていた移行先のリポジトリのセットアップ方法に書き換え、サンプルコードも同様に書き換えました。

Use @next/mdx to use mdx in Next.js by mottox2 · Pull Request #568 · mdx-js/mdx

bmcmahen/sancho

ブログでも紹介した「Sancho」に意図とは違う動きをするコンポーネントを見つけたのでCSSを修正したものです。
セレクトボックスのプルダウンアイコンにマウスカーソルを当てても、ポインターアイコンにならないのはやりがちなので気をつけていきたいところ。

Ignore select pointer event by mottox2 · Pull Request #18 · bmcmahen/sancho

zeit/next.js

『初夏のJavaScript祭』でSPAのSSR, SSGについて話してきました」の登壇資料を作っている際にソースを読んでいて、その時にリンク切れを見つけたので修正しました。
Next.jsではzeit/err-shという自作の短縮リンクを使っているのですが、その利用法が間違っていました。

Fix broken link by mottox2 · Pull Request #7378 · zeit/next.js

2019/06

bmcmahen/sancho

SanchoはTypeScriptで書かれているのですが、公式で提供しているPropTypesも同時に利用されています。PropTypesはコンポーネントに渡されたpropsの必須項目や型をチェックしてくれて、実行時にエラーメッセージを表示してくれるライブラリです。
TypeScriptの型とPropTypesの指定が一致しておらず、PropTypesの記述が不完全だったので修正しました。

Fix wrong proptypes by mottox2 · Pull Request #19 · bmcmahen/sancho

jser/jser.github.io

日本のJSerにおなじみのjser.github.ioのリポジトリです。サイトの記事にTypoを見つけたので修正しました。
このサイトには「Edit on GitHub」ボタンが用意されており簡単に修正リクエストを送ることができます。

2019-06-17のJS: react-redux 7.1.0(Hooksサポート)、Pika CDN、State of CSS 2019 - JSer.info

Fix typo by mottox2 · Pull Request #628 · jser/jser.github.io

まとめ

去年ほど活動はしていませんが、タイポやリンク切れに関しては迷わずプルリクエストを投げる習慣が付きました。

自作のOSSライブラリも1月に「gatsby-source-rss-feed」と「remark-code-titles」しか出せていないのでもうちょっと活発に動いていきたいです。

dev

ウェブ技術で縦書きを含む画像を生成したい

ここ最近、Web技術を利用した画像生成に興味があります。本記事では、日本語における表現の一種である縦書きに焦点を当て、Web技術を使った縦書きを含む画像生成方法についての調査をまとめました。 > 現

blog

Netlify Formsで問い合わせフォームを作ったら簡単だった

追記(2022/12/29): 問い合わせに対応する窓口をTwitterに統一したいので、フォームページは削除しました。 当ブログは静的サイトホスティングサービスのNetlifyでホスティングされ

netlify
dev

翻訳でHacktoberfestに参加しました

毎年10月に開催されるHacktoberfestに参加しました。このイベントはOSSへの貢献を行い、期間中に規定数(4つ)の貢献を行った人に特典がプレゼントされるものになっています。 自分はドキュメ

Copyright © 2023 @mottox2 All Rights Reserved.