なるようになるブログ

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

rails commit log流し読み(2023/02/27)

2023/02/27分のコミットです。

CHANGELOGへの追加はありませんでした。


Avoid casting to an integer

activerecord/lib/active_record/disable_joins_association_relation.rbの修正です。

primary keyにUUIDのようなintegerじゃない型を使用している場合に、has many through associationにdisable_joinsオプションを指定している場合、associationが正しく取得出来ないバグがあったのを修正しています。


Add option to configure digest algorithm used by Active Record Encryption (#44873)

Active Record、railtiesの修正です。

Active Record Encryptionで使用するdigest algorithmをconfigで指定出来るよう修正しています。値はconfig.active_record.encryption.hash_digest_classで指定出来るようになっており、Rails 7.0までのデフォルトはOpenSSL::Digest::SHA1で、7.1向けのデフォルトを設定した場合、OpenSSL::Digest::SHA256が使用されるようになっています。


Remove sentence about the namespace of deprecation notification events

rails guideのActive Support Instrumentationの修正です。

deprecation.railsの項にある注意事項が現在の挙動の説明として合ってなかった為削除しています。


Dockerfile don't install the redis package

railties/lib/rails/generators/app_base.rbの修正です。

Dockerfileで不要なredis packageのインストールを行わないよう修正しています。


Dockerfile: Improve bundle install

railties/lib/rails/generators/rails/app/templates/Dockerfile.ttの修正です。

BUNDLE_DEPLOYMENTを指定してGemfileが更新されないよう対応、及び、layer sizeを減らす為にbundle install実行後にbundle関連のcacheを削除するよう修正しています。


Remove debug from the default Gemfile

railties/lib/rails/generators/rails/app/templates/Gemfile.ttの修正です。

デフォルトのGemfileからdebug gemを削除しています。Ruby 3.1以降はRuby本体に同梱されている為、と、Ruby 3.1.3に同梱されているdebug gemのgemspecに少し問題があり(dependencyが正しく記載されていない)、その影響でBUNDLE_DEPLOYMENT=1を指定してのbundle installを実行するとエラーになってしまう為。


Add one platform at the time (#47516)

railties/lib/rails/generators/app_base.rbの修正です。

bundle lockによるplatformの追加を一度のコマンドで複数追加しようとしていたのを、platform毎にbundle lockを実行するよう修正しています。一度のコマンドでの複数追加は出来なかった為。


Dockerfile: run yarn install with --frozen-lockfile

railties/lib/rails/generators/rails/app/templates/Dockerfile.ttの修正です。

yarn install実行時に--frozen-lockfileオプションを指定するよう修正しています。