Ruby Weekly #395: 日本語サマリー
職場の Slack の #ruby 窓で Ruby Weekly メルマガが毎週配信されます。その中から面白そうなものをピックアップして、日本語で簡単なサマリーを書くようにしています。そのサマリーをここでまとまさせていただきます。くだけた日本語で失礼いたします。
http://rubyweekly.com/issues/395rubyweekly.com
Highlights
例外発生時にスタックトレースなど吐かずに無言で終了してたスレッドは、Rails 2.5 移行デフォで吐くようになった。
実験的な高パフォーマンス TruffleRuby がベースにしてる GraalVM。
NGINX Unit 1.0: An App Server That Supports Ruby (and Others)
NGINX のアプリサーバ NGINX Unit v1.0 リリース。
Sequel、Roda のメンテナー Jeremy Evans 先生がカリフォルニア州監査局で 12 年も働いた経験を語ったスライド。
- 政府機関発注の IT システムはほとんど高コストの巨大 SAP システムだが、カリフォルニア州監査局は低コストの小規模 Ruby ウェブアプリ
- アプリが 3 つある:
- 局員管理などの局内処理用イントラネットサイト
- 入局試験や応募者評価用の採用サイト
- 監査完了後の政府機関への改善案の遂行までのワークフロー管理サイト
- セキュリティ第一
Tutorials
Full Text Searching Linux Man Pages with Elasticsearch and Ruby
Linux の man
ページの ElasticSearch 検索機能実装手順。
ボットや検索エンジンのクローラーが発生させたエラーを is_crawler gem で抑える方法。エラーログのノイズなどを減らすように。
実験的なパターンマッチング gem。
2 年も前に Ruby 2.3 で導入された機能の振り返り。
&.
Hash#dig
、Array#dig
kill -9
などしたら、SignalException
を rescue
していても、処理が終わる前に強制終了してしまう。ちゃんと処理するには Signal.trap
が必要。
漢字フラッシュカードゲームの正解判定ロジックを「求めるな、命じよ」パターンでリファクターした話。
メンテされなくなった state_machine gem から aasm gem に移行した手順。
Code & Tools
WordPress ブログの RSS フィード取得用 gem。
ActionPolicy: Authorization Framework for Ruby and Rails Apps
Ruby、Rails アプリ向け認可フレームワーク gem。Pundit の物足りないところを補ってくれるらしい。
JSONAPI::Consumer: ActiveModel-Compliant Framework for Consuming JSON API Services
JSON 型 API クライアント gem。インタフェースは ActiveModel 同等。
kms_encrypted: Simple, Secure Key Management for attr_encrypted
attr_encrypted gem がキー管理までやってくれないので、この gem が KMS 方式で管理してくれる。Amazon KMS、Google KMS 対応。
Rails ビューの partial を AJAX で非同期ロード、レンダー高速化してくれる gem。