2016-12-06: bashcachedのv5.0.0とか、--statsフラグとか
気が付いたら日付けが変わってた‥‥。今日のは普通に色々やってただけなので許して。
やったこと
冬コミの原稿を入稿した
優勝!
と一概に言えたらよかったのですが現状、原稿不備を言い渡されている。修正版はもう出したので次は大丈夫なはず。大丈夫なはず‥‥。
crystal run --statsでコンパイル時間除いた実行時間まで表示するようにした
Enhance --stats option by MakeNowJust · Pull Request #3643 · crystal-lang/crystal
他にも色んなcrystalのサブコマンドで最後に行う処理の実行時間が表示されるようになってる。これがさくっとマージされたのは恐らく、Ary自身が世界で一番--statsフラグを使っているからではないかと思う。ボクが--statsを教わったのもAryからだったし。
個人的には#3622でcrystal docsでも--statsフラグ使えるでしょって言われたから、他のコマンドも同じことが言える気がして実装したんですけど。
あと、最後にAryがさりげなく出してきた-tフラグのアイディアは良いと思う。ぶっちゃけ普通のCrystalユーザーが求めてるのはそっちだろうな、と。
(自分の場合はコンパイル時にヤバいことをしたがるので--statsフラグは--statsフラグで便利なのですが)
それと面白い話として、このPull Requestはspecに影響を与える部分が無いにも関わらず数回連続でCIに失敗している。というのも、どうもThread::ConditionVariableのテストに不備があるようで、32bitのLinuxのテストで実行が終了しなくなる ことがある(100%ではない) みたい。そのためTravis CIでタイムアウトしていた。
数回で失敗したところでRX14がspecの-vフラグ(--verbose)を立てた方が良くない? と提言して、Aryがmasterブランチでそれを適用してCIを回したところで原因は発覚した。その後ボクはそのmasterにrebaseしたのだけど、三度目の正直なのか今度は普通にCIが通ってしまった。何だったんだ‥‥。
ちなみに件のThread::ConditionVariableのテストはペンディングされることになった。
この問題が起きてるときのAryの書き込みがやけに楽しそうだったのが印象的だった。こういうときに楽しめるのは尊敬できるなぁ、と。
bashcachedのv5.0.0をリリースした
実装したのは11月20日だと思われる。なんでリリースしていなかったのかというとベンチマークを実装していたからなのだけど、ベンチマークの実装が永遠に終わらなそうなので諦めてリリースすることにした。
ちなみにv4→v5とメジャーバージョンアップになっているけど、直したところとしては、
base64がbrew install base64でインストールしたものでも動くようにした。(-wフラグを使わないようにした)incrとdecrがバグっていたのを直した
くらい。ぶっちゃけ互換性はある。しかしこれによって、
$ brew install base64 bash socat
すればbashcachedが動くようになった。つーかmacOS標準のbash古すぎだろ。
ベンチマークよりも先にテストを作った方がいい気がする。
その他
大学でひさしぶりに、プルーストの『失われた時間を求めて』を読んでいた。初めて読む訳だったのでわりと印象が違う。前読んだ方が雰囲気は出てた気がするけど、今回読んだ方が読みやすかった。といってもまだ全体の一割も読んでいないのだけど。こいついつもマドレーヌ食ってやがるな。
『失なわれた時間を求めて』を読もうと思った理由は大体バーナード嬢いわく、のせい。あれは結構好き。
あとはミヒャエル・エンデの言った「永遠に幼きもの Ewig-Kindliche」について考えたりしていた。永遠に幼なきものって響き、かなり危険な香りがしていいですよね。
明日すること
- 入稿の確認、代金の振り込み
- キーボード買うぞ
という感じです。おやすみなさい。
これはMakeNowJust Advent Calendar 2016の6日目の記事ですが、もういっそMakeNowJust生存記録みたいな感じにすればいいんじゃないかな‥‥。