なるようになるブログ

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

rails commit log流し読み(2024/10/19)

2024/10/19分のコミットです。

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

railties/CHANGELOG.md

actionpack/CHANGELOG.md

actionview/CHANGELOG.md

activejob/CHANGELOG.md

activerecord/CHANGELOG.md

activesupport/CHANGELOG.md

railties/CHANGELOG.md


Fix httpclient git source in the lockfile

Gemfile.lockの修正です。

httpclient gemのdependencyがlockfileに正しく記載されていなかったのを修正しています。


Prevent ActiveSupport::TimeZone documentation class inferences

activesupport/lib/active_support/values/time_zone.rbのdocの修正です。

ActiveSupport::TimeZoneのdoc内の、一般用語としてのTimeTime classのdocへのリンクにならないよう修正しています。


Merge pull request #53315 from aidanharan/fix-rails-version-selector

guides/source/layout.html.erbの修正です。

rails guideで特定のバージョンのguideを見ている際に、guides-version用のselectで現在閲覧しているバージョンがselectedにならないバグがあったのを修正しています。


Add support for using kamal inside of the generated devcontainer

railtiesの修正です。

DevContainer内でKamalを使用出来るよう対応しています。Kamalを使用するにはDockerが必要なのですが、ghcr.io/devcontainers/features/docker-outside-of-docker:というfeatureでcontainerで同じDocker daemonを使用するよう出来るらしく、そちらを使用するよう対応されています。


Don't use soft-deprecated for form_tag and form_for in the guides

rails guideのAction View Form Helpersの修正です。

form_tagform_forについて記載している箇所で、これらの機能はsoft-deprecatedである旨記載していたのを、推奨しないが、まだ使える事は出来る旨説明を修正しています。


Reduce allocations in AS::Duration#{since,ago}

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

ActiveSupport::Duration#since#agoメソッドで、オブジェクト生成数を減らすようリファクタリングしています。


Remove Rails.application.config.action_controller.allow_deprecated_parameters_hash_equality

actionpack/lib/action_controller/metal/strong_parameters.rbの修正です。

deprecatedになっていたconfig.action_controller.allow_deprecated_parameters_hash_equalityを削除しています。


Bump dynamic controller and action segment deprecation to Rails 8.1

actionpack/lib/action_dispatch/routing/route_set.rbの修正です。

routeでdynamic :controller及び:action segmentを削除するバージョンを8.1に延長しています。


Remove deprecated support to passing nil to the model: argument of form_with

actionview/lib/action_view/helpers/form_helper.rbの修正です。

deprecatedになっていた、form_withmodelオプションにnilが渡された場合の挙動を削除しています。


Remove deprecated support to passing a content to void tag elements on the tag builder.

actionview/lib/action_view/helpers/tag_helper.rbの修正です。

deprecatedになっていた、tag builderでvoid tag elementにcontentが渡された場合の挙動を削除しています。


Remove deprecated config.active_job.use_big_decimal_serializer

activejob/lib/active_job.rbの修正です。

deprecatedになっていた、config.active_job.use_big_decimal_serializerを削除しています。


Remove deprecated config.active_record.commit_transaction_on_non_local_return

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

deprecatedになっていた、config.active_record.commit_transaction_on_non_local_returnを削除しています。


Remove deprecated config.active_record.allow_deprecated_singular_associations_name

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

deprecatedになっていた、config.active_record.allow_deprecated_singular_associations_nameを削除しています。


Remove deprecated support to finding database adapters that aren't registered to Active Record

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

deprecatedになっていた、Active Recordに登録されていないdatabase adapterの取得処理を削除しています。


Remove deprecated support for defining enum with keyword arguments

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

deprecatedになっていた、keywrod argumentでのenumの値の定義のサポートを削除しています。


Remove deprecated config.active_record.warn_on_records_fetched_greater_than

Active Recordの修正です。

deprecatedになっていた、config.active_record.warn_on_records_fetched_greater_thanを削除しています。


Remove deprecated config.active_record.sqlite3_deprecated_warning

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

deprecatedになっていた、config.active_record.sqlite3_deprecated_warningを削除しています。


Remove deprecation of query_constraints: association option, raise instead

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

deprecatedになっていた、associationのquery_constraintsオプションを使用した場合の挙動が、deprecateメッセージを出力からConfigurationErrorをraiseする、に変更になっています。


Remove deprecated ActiveRecord::ConnectionAdapters::ConnectionPool#connection

activerecord/lib/active_record/connection_adapters/abstract/connection_pool.rbの修正です。

deprecatedになっていた、ActiveRecord::ConnectionAdapters::ConnectionPool#connectionを削除しています。


Remove deprecated support to passing a database name to cache_dump_filename

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

deprecatedになっていた、cache_dump_filenameにdatabase名を指定した場合の挙動を削除しています。


Remove deprecated support to setting ENV["SCHEMA_CACHE"]

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

deprecatedになっていた、ENV["SCHEMA_CACHE"]のサポートを削除しています。


Remove unnecessary assert_not_deprecated

activerecord/test/cases/transactions_test.rbの修正です。

不要なassert_not_deprecatedメソッドの呼び出しを削除しています。


Remove deprecated ActiveSupport::ProxyObject

Active Supportの修正です。

deprecatedになっていた、ActiveSupport::ProxyObjectを削除しています。


Remove deprecated support to setting attr_internal_naming_format with a @ prefix

activesupport/lib/active_support/core_ext/module/attr_internal.rbの修正です。

deprecatedになっていた、attr_internal_naming_format@ prefixが指定された場合の挙動を削除しています。


Remove deprecated support to passing an array of strings to ActiveSupport::Deprecation#warn

activesupport/lib/active_support/deprecation/reporting.rbの修正です。

deprecatedになっていた、ActiveSupport::Deprecation#warnにstringsのarrayが指定された場合の挙動を削除しています。


Remove deprecated config.read_encrypted_secrets

railties/lib/rails/application/configuration.rbの修正です。

deprecatedになっていた、config.read_encrypted_secretsを削除しています。


Remove deprecated file rails/console/app

railtiesの修正です。

deprecatedになっていた、rails/console/appを削除しています。


Remove deprecated file rails/console/helpers

railtiesの修正です。

deprecatedになっていた、rails/console/helpersを削除しています。


Remove deprecated support to extend Rails console through Rails::ConsoleMethods

railties/lib/rails/commands/console/irb_console.rbの修正です。

railtiesの修正です。

deprecatedになっていた、Rails::ConsoleMethodsを使用してのRails consoleを拡張する為の処理を削除しています。


Merge pull request #53359 from kamipo/fix_time_zone_aware_custom_attributes

Active Recordの修正です。

time_zone_aware_attributesがtrueの場合、time zone-aware custom typeを使用しているattributesで、値のcast処理が正しく行われないバグがあったのを修正しています。


Remove the legacy_connection_handling setter

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

Rails 7.1で削除予定だったlegacy_connection_handling setterが残っていたのを削除しています。


Remove unnecessary build_app calls in configuration tests

railties/test/application/configuration_test.rbの修正です。

不要と思われるテスト内のbuild_appの実行を削除しています。が、必要な処理で、build_appが無いとテストがfailしてしまう為、直後にRevertされています。


Revert "Remove unnecessary build_app calls in configuration tests"

直前のコミットをRevertしています。


Deprecate setting config.active_job.enqueue_after_transaction_commit

Active Record、Active Jobの修正です。

config.active_job.enqueue_after_transaction_commitをdeprecatedにしています。Railsとしてはデフォルトの挙動(transaction commit後にjobをenqueue)を推奨しており、configでjob全体の挙動を変更出来るようにしておく必要は無いだろう、との事でdeprecatedにしたようです。configはdeprecatedになっていますが、jobごとのenqueue_after_transaction_commitの指定は引き続き出来るようになっています。合わせて、挙動をSymbolで指定出来るようになっていたのをdeprecatedにしており、今後は単にbooleanの値を指定するようになっています。


Preparing for 8.0.0.rc1 release

各gemのバージョンを8.0.0.rc1に更新、CHANGELOGRails 8.0.0.rc1のヘッダーを追加、等を行っています。


Start development of Rails 8.1

各gemのバージョンを8.1.0.alphaに更新しています。


Fix Gemfile.lock

Gemfile.lockの修正です。

delayed_job、及び、delayed_job_active_recordを最新バージョンに更新しています。


Upgrade all development gems

Gemfile.lockの修正です。

すべての開発用のgemを最新バージョンに更新しています。


Remove delayed_job from the test suite for now

Gemfileactivejob/Rakefileの修正です。

delayed_jobをGemfileから削除、及び、delayed_jobのテストを実行しないよう修正しています。delayed_job_active_recordRails 7.2でバージョンロックされてしまっており、テストが実行出来ない為。


Fix inspector for when default configs are empty

tools/rail_inspector/lib/rail_inspector/configuring/check/framework_defaults.rbの修正です。

default configsが空の場合に、framework defaultsのチェック用スクリプトがエラーになってしまうバグがあったのを修正しています。


Fix incorrect Method and Time API doc links [ci skip]

docの修正です。

doc内の、一般用語としてのTimeTime classのdocへのリンクにならないよう修正しています。


Read the file in the destination root instead of the current directory

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

authentication generatorsでGemfileをloadする際に、current directoryになるGemfileをロードしていたのを、アプリケーションのrootにあるGemfileをロードするよう修正しています。


Fix authentication_generator_test

railtiesの修正です。

authentication generatorのテストが、使用しているRailsのバージョンがrubygemsにfailするようになっていたのを、bundleの実行等をmockしrubygemsにリリースされてなくてもテストがfailしないよう修正しています。


Fix typo missing ` in deprecation message

activejob/lib/active_job/enqueue_after_transaction_commit.rbの修正です。

deprecation message内のタイポを修正しています。


Fix rubocop offences

railties/test/generators/authentication_generator_test.rbの修正です。

Rubocopのチェックでエラーになる箇所があったのを修正しています。


Point 8-0-stable branch CHANGELOGs in rails 8-0 release note [ci-skip]

rails guideのRuby on Rails 8.0 Release Notesの修正です。

CHANGELOGへのリンクを8-0-stable branchに変更しています。