Ruby

oas_parser を使って OpenAPI の YAML をパースする

備忘録。 OpenAPI の定義をパースしてあれこれしたい機会があったので、パーサを試してみた。パーサ実装は色々あったが、とりあえず慣れ親しんでいる Ruby 向けの oas_parser を使ってみた。

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

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

RubyKaigi 2019 参加記録(3日目)

RubyKaigi 2019 3日目のメモです。 1日目 autopp-tech.hatenablog.com 2日目 autopp-tech.hatenablog.com

RubyKaigi 2019 参加記録(2日目)

RubyKaigi 2019 2日目のメモ 1日目 autopp-tech.hatenablog.com

RubyKaigi 2019 参加記録(1日目)

4/18 - 4/20 に福岡で開催中の RubyKaigi 2019 に参加しています。 1日目に聞いたセッションについて忘れないように雑にメモっておきます。 本当に雑です。

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

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

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

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

Ruby 2.7 の Numbered parameters を試す

Ruby の trunk に Numbered parameters なる新機能が入ったようなのでどんな挙動をするのか触ってみた。 動作確認に使っているバージョンはこちら $ ruby -v ruby 2.7.0dev (2019-03-18 trunk 67294) [x86_64-darwin17]

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

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

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

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

OpenAPI Generator の Ruby クライアントコード生成のバグをいくつか直した

OpenAPI のコードジェネレータである OpenAPI Generator に Ruby クライアント生成周りでいくつかの PR を出した。 ↓の記事の続き。

Danger のプラグインの構造

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

swagger-codegen の Ruby クライアントコード生成について調べた

swagger-codegen で API の Ruby クライアントライブラリの生成を試していたところ色々な問題を見つけたメモ。すべて以下のバージョンを対象にしています。 $ java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar version 2.4.2-SNAPSHOT…

VSCode で Ruby のブロック用のスニペットを定義した

VSCode における Ruby の do - end の補完には endwise という拡張がすでにあるがブロックパラメータなどの補完はできない。そこで公式ドキュメントに従って、Atom と同じような補完ができるスニペットを定義した。 { "Do block": { "prefix": "do", "body":…