備忘録

ruby-build の各バージョンの仕組みについて

備忘録。 Ruby の trunk に入った新機能を試す過程で ruby-build のスクリプトを調べたので、その概略についてのメモを残す。 ruby-build のコミット ca85eba に基づいた情報です。

Fiddle 経由で取得した char ** を Ruby の文字列配列に変換する

備忘録。 C の文字列配列(char**)を返す関数を fiddle 経由で呼び出し、String の Array に変換する方法について。

C の __COUNTER__ マクロの使い方

備忘録。 GCC や Clang で利用できる C の拡張機能 __COUNTER__ マクロについて。

Node.js の import の大文字小文字問題について

備忘録。 Nuxt.js を使っている時にファイルシステムの仕様で Mac と Linux でビルドの成否が変わる問題に当たった。

Fiddle で C のメモリを free した時にやらかした話

備忘録。 少し前に Fiddle を使って C 関数を呼び出す Ruby プログラムを書いた時にやらかした時のメモ。 Fiddle とは とてもざっくりというと dlopen/dlsym のラッパー。以下は C の strlen を Ruby から呼び出す例がドキュメントにある。 起きたこと 以下…

Ruby の子プロセスの終了ステータスの取得方法

備忘録。 Ruby での子プロセスの終了ステータスの取得方法について、定期的に自分でやらかしたり他の人がやらかしているのを目撃するので書き残す。

Ruby の独自エラークラスのデザイン

備忘録。 Ruby の例外クラスのインタフェース、とりわけコンストラクタと生成後に取得できるメッセージについて考えることがあったので、いくつかの事例をまとめる。

VSCode の設定を Settings Sync で共有しつつ環境固有の設定もする

備忘録。 Settings Sync は複数の PC で各種設定を同期するためのプラグイン。settings.json や keybindings.json だけでなく独自スニペットも管理できる。 キーマップなどは同期するだけでどうにかなるが、一部の設定は PC 毎に変えたくなることもある。こ…

Danger のプラグインの構造

プルリクエストに関する定形作業を自動化するツール Danger のプラグインを書く機会があったので、プラグインの構造について簡単にメモ。v5.13.0 を参照している。

Hugo の Markdown レンダリングについて調べた

日記兼備忘録。 Go 製の静的サイトジェネレータ Hugo の [link\\](url) という形式のリンクがうまくレンダリングされないバグを追いかける過程で、Hugo が使っている Markdown レンダリングのライブラリについて調べたのでまとめる。

Micrometer + Promregator で Spring Boot アプリのヒストグラム形式のメトリクスを収集する際の注意点

備忘録。 CloudFoundry で動かしている Spring Boot アプリケーションのメトリクスを Promregator 経由で Prometheus に蓄積しようとした時に詰まったところ & その解決策について。