なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2017/11/21)

2017/11/21分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

activesupport/CHANGELOG.md


Fix direct uploads to local service

activestorage/app/controllers/active_storage/disk_controller.rbの修正です。

Active Storageでstorageにlocal diskを指定していた場合に、direct uploadがエラーになっていたのを修正しています。

CSRF tokenのチェックでエラーになっていた為、controllerにskip_forgery_protectionを指定し対応しています。


Load 5.2 defaults in ASt dummy app

activestorage/test/dummy/config/application.rbの修正です。

Active Storageのdummy applicationでloadするconfigのバージョンを5.2にあげています。


MemCacheStore: Support expiring counters

activesupport/lib/active_support/cache/mem_cache_store.rbの修正です。

MemCacheStoreにexpiring counterのサポートを追加しています。

incrementdecrementメソッドそれぞれにexpires_inオプションを指定できるようになっています。

Rails.cache.increment("my_counter", 1, expires_in: 2.minutes)

counterが存在していない場合のみMemcached TTLが設定されます。counterが既に存在する場合は、expiryは設定されません(これはMemcachedの仕様、のはず)


Provide attachment writers

activestorage/lib/active_storage/attached/macros.rbの修正です。

Active Storageにattachment writerメソッドを追加しています。

これにより、paramsにuploadデータが含まれていた場合に、attachメソッドを使用せずに値が指定出来るようになります。

# Before:
User.create!(user_params.except(:avatar)).tap do |user|
  user.avatar.attach(user_params[:avatar])
end

# After:
User.create!(user_params)

Remove unused em-hiredis

Gemfileの修正です。

もう使用していないem-hiredis gemを削除しています。


Update rack-test to 0.8.

Gemfile.lockの修正です。

rack-test gemのバージョンを0.8.0に更新しています。0.7.1はyankedになっておりダウンロードできない為。