1 Rails 5.2 へのアップグレード
既存のアプリケーションをアップグレードする場合は、アップグレード前に十分なテストカバレッジを持つことが重要です。また、まずRails 5.1にアップグレードし、アプリケーションが正常に動作することを確認してから、Rails 5.2への更新を試みることをお勧めします。アップグレード時に注意すべき点のリストは、Ruby on Railsのアップグレードガイドで利用できます。
2 主要な機能
2.1 Active Storage
Active Storageは、Amazon S3、Google Cloud Storage、またはMicrosoft Azure Storageなどのクラウドストレージサービスにファイルをアップロードし、それらのファイルをActive Recordオブジェクトに添付することを容易にします。開発およびテスト用のローカルディスクベースのサービスが付属しており、バックアップやマイグレーションのためにファイルを下位サービスにミラーリングすることもサポートしています。Active Storageについては、Active Storageの概要ガイドを参照してください。
2.2 Redis Cache Store
Rails 5.2には、組み込みのRedisキャッシュストアが付属しています。これについては、Railsでのキャッシュガイドで詳しく説明しています。
2.3 HTTP/2 Early Hints
Rails 5.2は、HTTP/2 Early Hintsをサポートしています。Early Hintsを有効にしてサーバーを起動するには、bin/rails server
に--early-hints
を渡します。
2.4 Credentials
config/credentials.yml.enc
ファイルが追加され、本番アプリケーションの秘密情報を保存することができるようになりました。これにより、config/master.key
ファイルまたはRAILS_MASTER_KEY
環境変数で暗号化されたリポジトリに対して、サードパーティのサービスの認証情報を直接保存することができます。これは、Rails 5.1で導入されたRails.application.secrets
と暗号化されたシークレットを最終的に置き換えるものです。さらに、Rails 5.2では、Credentialsの基礎となるAPIを公開しているため、他の暗号化された設定、キー、ファイルを簡単に扱うことができます。これについては、Railsアプリケーションのセキュリティガイドで詳しく説明しています。
2.5 Content Security Policy
Rails 5.2には、アプリケーションのContent Security Policyを設定するための新しいDSLが付属しています。グローバルなデフォルトポリシーを設定し、リソースごとにオーバーライドすることができ、マルチテナントアプリケーションのアカウントサブドメインなど、パーリクエストの値をヘッダーに注入するためにラムダを使用することもできます。これについては、Railsアプリケーションのセキュリティガイドで詳しく説明しています。
3 Railties
詳細な変更については、Changelogを参照してください。
3.1 廃止予定
ジェネレータとテンプレートの
capify!
メソッドを廃止します。 (Pull Request)rails dbconsole
およびrails console
コマンドに環境名を通常の引数として渡すことは廃止されました。 代わりに-e
オプションを使用する必要があります。 (Commit)Rails::Application
のサブクラスを使用してRailsサーバーを起動することは廃止されました。 (Pull Request)Railsプラグインテンプレートの
after_bundle
コールバックを廃止します。 (Pull Request)
3.2 注目すべき変更
すべての環境で読み込まれる
config/database.yml
に共有セクションを追加しました。 (Pull Request)プラグインジェネレータに
railtie.rb
を追加しました。 (Pull Request)tmp:clear
タスクでスクリーンショットファイルをクリアします。 (Pull Request)bin/rails app:update
を実行する際に未使用のコンポーネントをスキップします。 初期のアプリケーション生成時にAction Cable、Active Recordなどをスキップした場合、アップデートタスクもそれらのスキップを尊重します。 (Pull Request)3レベルのデータベース構成を使用している場合、
rails dbconsole
コマンドにカスタム接続名を渡すことができるようになりました。 例:bin/rails dbconsole -c replica
。 (Commit)console
およびdbconsole
コマンドを実行する際に、環境名のショートカットを適切に展開します。 (Commit)デフォルトの
Gemfile
にbootsnap
を追加しました。 (Pull Request)rails runner
でスクリプトを標準入力から実行するためのプラットフォームに依存しない方法として-
をサポートします。 (Pull Request)新しいRailsアプリケーションが作成される際に、
Gemfile
にruby x.x.x
バージョンを追加し、現在のRubyバージョンを含む.ruby-version
ルートファイルを作成します。 (Pull Request)プラグインジェネレータに
--skip-action-cable
オプションを追加しました。 (Pull Request)プラグインジェネレータの
Gemfile
にgit_source
を追加しました。 (Pull Request)Railsプラグインで
bin/rails
を実行する際に未使用のコンポーネントをスキップします。 (Commit)ジェネレータアクションのインデントを最適化しました。 (Pull Request)
ルートのインデントを最適化しました。 (Pull Request)
プラグインジェネレータに
--skip-yarn
オプションを追加しました。 (Pull Request)ジェネレータの
gem
メソッドに複数のバージョン引数をサポートします。 (Pull Request)開発およびテスト環境でアプリケーション名から
secret_key_base
を派生させます。 (Pull Request)デフォルトの
Gemfile
にmini_magick
をコメントとして追加しました。 (Pull Request)rails new
およびrails plugin new
はデフォルトでActive Storage
を取得します。--skip-active-storage
を使用してActive Storage
をスキップする機能を追加し、--skip-active-record
が使用された場合には自動的にスキップします。 (Pull Request)
4 Action Cable
詳細な変更については、Changelogを参照してください。
4.1 削除
- 廃止予定のイベント駆動型Redisアダプタを削除しました。 (Commit)
4.2 注目すべき変更
cable.ymlで
host
、port
、db
、password
オプションをサポートしました。 (Pull Request)PostgreSQLアダプタを使用する場合に、長いストリーム識別子をハッシュ化します。 (Pull Request)
5 Action Pack
詳細な変更については、Changelogを参照してください。
5.1 削除
- 廃止された
ActionController::ParamsParser::ParseError
を削除しました。 (Commit)
5.2 廃止予定
-
ActionDispatch::TestResponse
の#success?
、#missing?
、#error?
のエイリアスを廃止予定としました。 (Pull Request)
5.3 注目すべき変更
フラグメントキャッシュに再利用可能なキャッシュキーのサポートを追加しました。 (Pull Request)
フラグメントのキャッシュキーの形式を変更し、キーの変更をデバッグしやすくしました。 (Pull Request)
GCM を使用した AEAD 暗号化されたクッキーとセッションを追加しました。 (Pull Request)
デフォルトで CSRF 保護を有効にしました。 (Pull Request)
サーバーサイドで署名/暗号化されたクッキーの有効期限を強制します。 (Pull Request)
クッキーの
:expires
オプションがActiveSupport::Duration
オブジェクトをサポートするようになりました。 (Pull Request)Capybara の登録済み
:puma
サーバー設定を使用するようにしました。 (Pull Request)キーローテーションのサポートを持つクッキーミドルウェアを簡素化しました。 (Pull Request)
HTTP/2 の Early Hints を有効にする機能を追加しました。 (Pull Request)
システムテストにヘッドレスChromeのサポートを追加しました。 (Pull Request)
redirect_back
メソッドに:allow_other_host
オプションを追加しました。 (Pull Request)assert_recognizes
がマウントされたエンジンをトラバースするようにしました。 (Pull Request)Content-Security-Policy ヘッダーを設定するための DSL を追加しました。 (Pull Request, Commit, Commit)
モダンなブラウザでサポートされている最も人気のあるオーディオ/ビデオ/フォント MIME タイプを登録しました。 (Pull Request)
システムテストのスクリーンショット出力のデフォルトを
inline
からsimple
に変更しました。 (Commit)システムテストにヘッドレスFirefoxのサポートを追加しました。 (Pull Request)
デフォルトのヘッダーセットにセキュアな
X-Download-Options
とX-Permitted-Cross-Domain-Policies
を追加しました。 (Commit)システムテストを、ユーザーが別のサーバーを手動で指定しない限り、デフォルトのサーバーとして Puma を設定するように変更しました。 (Pull Request)
デフォルトのヘッダーセットに
Referrer-Policy
ヘッダーを追加しました。 (Commit)ActionController::Parameters#each
のHash#each
の動作に一致するようにしました。 (Pull Request)Rails UJS の自動ノンス生成のサポートを追加しました。 (Commit)
HSTS のデフォルトの最大有効期間を 31536000 秒(1年)に更新し、https://hstspreload.org/ の最小 max-age 要件を満たすようにしました。 (Commit)
cookies
のto_h
にto_hash
のエイリアスメソッドを追加しました。session
のto_hash
にto_h
のエイリアスメソッドを追加しました。 (Commit)
6 Action View
詳細な変更については、Changelog を参照してください。
6.1 削除
- 廃止された Erubis ERB ハンドラーを削除しました。 (Commit)
6.2 廃止予定
-
image_tag
で生成される画像にデフォルトの alt テキストを追加するために使用されていたimage_alt
ヘルパーを廃止予定としました。 (Pull Request)
6.3 注目すべき変更
JSON Feeds をサポートするために、
auto_discovery_link_tag
に:json
タイプを追加しました。 (Pull Request)image_tag
ヘルパーにsrcset
オプションを追加しました。 (Pull Request)field_error_proc
がoptgroup
とセレクトディバイダーoption
をラップする問題を修正しました。 (Pull Request)form_with
がデフォルトで ID を生成するように変更しました。 (Commit)preload_link_tag
ヘルパーを追加しました。 (Pull Request)グループ化されたセレクトでグループメソッドとして呼び出し可能なオブジェクトの使用を許可しました。 (Pull Request)
7 Action Mailer
詳細な変更については、Changelogを参照してください。
7.1 注目すべき変更点
Action Mailerクラスが配信ジョブを設定できるようになりました。 (Pull Request)
assert_enqueued_email_with
テストヘルパーを追加しました。 (Pull Request)
8 Active Record
詳細な変更については、Changelogを参照してください。
8.1 削除されたもの
廃止された
#migration_keys
を削除しました。 (Pull Request)Active Recordオブジェクトの型変換時に
quoted_id
への廃止されたサポートを削除しました。 (Commit)index_name_exists?
から廃止された引数default
を削除しました。 (Commit)関連付けにおいて
class_name
にクラスを渡すことへの廃止されたサポートを削除しました。 (Commit)initialize_schema_migrations_table
とinitialize_internal_metadata_table
の廃止されたメソッドを削除しました。 (Commit)supports_migrations?
の廃止されたメソッドを削除しました。 (Commit)supports_primary_key?
の廃止されたメソッドを削除しました。 (Commit)ActiveRecord::Migrator.schema_migrations_table_name
の廃止されたメソッドを削除しました。 (Commit)#indexes
から廃止された引数name
を削除しました。 (Commit)#verify!
から廃止された引数を削除しました。 (Commit).error_on_ignored_order_or_limit
の廃止された設定を削除しました。 (Commit)#scope_chain
の廃止されたメソッドを削除しました。 (Commit)#sanitize_conditions
の廃止されたメソッドを削除しました。 (Commit)
8.2 廃止予定
supports_statement_cache?
を廃止しました。 (Pull Request)ActiveRecord::Calculations
のcount
とsum
に引数とブロックを同時に渡すことを廃止しました。 (Pull Request)Relation
でarel
に委譲することを廃止しました。 (Pull Request)TransactionState
のset_state
メソッドを廃止しました。 (Commit)置換なしで
expand_hash_conditions_for_aggregates
を廃止しました。 (Commit)
8.3 注目すべき変更点
引数なしで動的なフィクスチャアクセサメソッドを呼び出すと、このタイプのすべてのフィクスチャが返されるようになりました。以前はこのメソッドは常に空の配列を返していました。 (Pull Request)
Active Record属性リーダーをオーバーライドする際の変更された属性の不一致を修正しました。 (Pull Request)
MySQLの降順インデックスをサポートしました。 (Pull Request)
bin/rails db:forward
の最初のマイグレーションを修正しました。 (Commit)現在のマイグレーションが存在しない場合にマイグレーションの移動で
UnknownMigrationVersionError
エラーを発生させるようにしました。 (Commit)データベース構造のダンプにおいて、rakeタスクで
SchemaDumper.ignore_tables
を尊重するようにしました。 (Pull Request)ActiveRecord::Base#cache_version
を追加して、新しいバージョン付きエントリを介して再利用可能なキャッシュキーをサポートします。これにより、ActiveRecord::Base#cache_key
はタイムスタンプを含まない安定したキーを返すようになりました。 (Pull Request)キャストされた値がnilの場合にバインドパラメータを作成しないように修正しました。 (Pull Request)
パフォーマンスの向上のために、フィクスチャを挿入する際にバルクINSERTを使用します。 (Pull Request)
ネストされた結合を表す2つの関係をマージすると、マージされた関係の結合がLEFT OUTER JOINに変換されなくなりました。 (Pull Request)
トランザクションを子トランザクションに状態を適用するように修正しました。以前は、ネストされたトランザクションがあり、外側のトランザクションがロールバックされた場合、内側のトランザクションのレコードはまだ永続化されたままでした。これは、親トランザクションの状態を子トランザクションに適用することで修正されました。これにより、内側のトランザクションのレコードが正しく永続化されないようになります。 (Commit)
スコープに結合を含めた場合のイーガーローディング/プリローディングの関連修正 (プルリクエスト)
sql.active_record
通知のサブスクライバーによって発生したエラーをActiveRecord::StatementInvalid
例外に変換しないように修正 (プルリクエスト)レコードのバッチ処理 (
find_each
,find_in_batches
,in_batches
) の場合、クエリキャッシュをスキップするように修正 (コミット)sqlite3 のブール値のシリアライズを 1 と 0 を使用するように変更 SQLite はネイティブで 1 と 0 を真偽値として認識しますが、以前は 't' と 'f' を認識していませんでした。 (プルリクエスト)
マルチパラメータ割り当てを使用して構築された値は、シングルフィールドのフォーム入力でレンダリングする際に、ポストタイプキャスト値を使用するように変更されました。 (コミット)
モデルを生成する際に
ApplicationRecord
はもはや生成されません。生成する必要がある場合は、rails g application_record
で作成できます。 (プルリクエスト)Relation#or
は、references
の値が異なる2つの関連を受け入れるようになりました。references
はwhere
によって暗黙的に呼び出される可能性があるためです。 (コミット)Relation#or
を使用する場合、共通の条件を抽出し、OR 条件の前に配置するように変更しました。 (プルリクエスト)binary
フィクスチャヘルパーメソッドを追加 (プルリクエスト)STI の逆関連を自動的に推測するように変更 (プルリクエスト)
ロック待ちタイムアウトが超過した場合に発生する
LockWaitTimeout
新しいエラークラスを追加 (プルリクエスト)sql.active_record
インストルメンテーションのペイロード名をより具体的なものに更新 (プルリクエスト)データベースからインデックスを削除する際に指定されたアルゴリズムを使用するように変更 (プルリクエスト)
Relation#where
にSet
を渡すと、配列を渡すのと同じように動作するように修正 (コミット)PostgreSQL の
tsrange
はサブセカンドの精度を保持するように変更 (プルリクエスト)ダーティレコードで
lock!
を呼び出すとエラーが発生するように修正 (コミット)SQLite アダプタを使用している場合、インデックスの列順序が
db/schema.rb
に書き込まれないバグを修正 (プルリクエスト)指定された
VERSION
でbin/rails db:migrate
を修正します。空のVERSION
でbin/rails db:migrate
を実行すると、VERSION
なしと同じように動作します。VERSION
の形式をチェックします。マイグレーションバージョン番号またはマイグレーションファイルの名前を許可します。フォーマットが無効な場合はエラーを発生させます。対象のマイグレーションが存在しない場合はエラーを発生させます。 (プルリクエスト)ステートメントタイムアウトが超過した場合に発生する
StatementTimeout
新しいエラークラスを追加 (プルリクエスト)update_all
は、値をType#cast
に渡す前にType#serialize
に渡すようになりました。これにより、update_all(foo: 'true')
は正しくブール値を永続化します。 (コミット)リレーションクエリメソッドで使用する場合、生の SQL フラグメントは明示的にマークする必要があります。 (コミット, コミット)
データベースマイグレーションに
#up_only
を追加し、アップ時にのみ関連するコード(新しいカラムのポピュレートなど)を実行できるようにしました。 (プルリクエスト)ユーザーリクエストによるステートメントのキャンセル時に発生するエラークラス
QueryCanceled
を追加します。 (プルリクエスト)Relation
のインスタンスメソッドと競合するスコープの定義を許可しません。 (プルリクエスト)add_index
に PostgreSQL オペレータクラスのサポートを追加します。 (プルリクエスト)カラム情報をリセットする際に、子孫の属性メソッドを未定義にします。 (プルリクエスト)
limit
やoffset
を使用したdelete_all
のためのサブセレクトを使用します。 (コミット)limit()
と一緒に使用した場合のfirst(n)
の不整合を修正します。first(n)
ファインダーはlimit()
を尊重するようになり、relation.to_a.first(n)
の動作とも一貫し、last(n)
の振る舞いとも一致します。 (プルリクエスト)未保存の親インスタンスでのネストした
has_many :through
関連を修正します。 (コミット)削除されるレコードを通じて削除する際に関連の条件を考慮します。 (コミット)
save
またはsave!
の呼び出し後に破壊されたオブジェクトの変更を許可しません。 (コミット)left_outer_joins
による関連マージャーの問題を修正します。 (プルリクエスト)PostgreSQL 外部テーブルのサポートを追加します。 (プルリクエスト)
Active Record オブジェクトが複製される際にトランザクションの状態をクリアします。 (プルリクエスト)
composed_of
カラムを使用して where メソッドに Array オブジェクトを引数として渡す際の展開の問題を修正します。 (プルリクエスト)reflection.klass
がpolymorphic?
でない場合に例外を発生させ、誤用を防止します。 (コミット)MySQL と PostgreSQL の
#columns_for_distinct
を修正し、ActiveRecord::FinderMethods#limited_ids_for
が正しい主キー値を使用するようにします。ORDER BY
の列に他のテーブルの主キーが含まれていても、正しい主キー値を使用します。 (コミット)dependent: :destroy
の問題を修正し、子が削除されない場合に親クラスが削除される問題を修正します。 (コミット)アイドル状態のデータベース接続(以前は孤立した接続のみ)は、接続プールリーパーによって定期的に削除されるようになりました。 (コミット)
9 Active Model
詳細な変更については、Changelog を参照してください。
9.1 注目すべき変更点
ActiveModel::Errors
のメソッド#keys
、#values
を修正します。#keys
を空のメッセージを持たないキーのみを返すように変更します。#values
を空でない値のみを返すように変更します。 (プルリクエスト)ActiveModel::Errors
にメソッド#merge!
を追加します。 (プルリクエスト)長さバリデータのオプションに Proc またはシンボルを渡すことを許可します。 (プルリクエスト)
_confirmation
の値がfalse
の場合にConfirmationValidator
のバリデーションを実行します。 (プルリクエスト)プロックのデフォルト値を持つ属性 API を使用するモデルをマーシャリングできるようにします。 (コミット)
シリアライズ時にオプションを持つ複数の
:includes
をすべて失わないようにします。 (コミット)
10 Active Support
詳細な変更については、Changelog を参照してください。
10.1 削除されたもの
コールバックのための非推奨の
:if
と:unless
の文字列フィルタを削除します。 (コミット)非推奨の
halt_callback_chains_on_return_false
オプションを削除します。 (コミット)
10.2 廃止
10.3 注目すべき変更点
HashWithIndifferentAccess
にfetch_values
を追加します。 (プルリクエスト)Time#change
に:offset
のサポートを追加します。 (コミット)ActiveSupport::TimeWithZone#change
に:offset
と:zone
のサポートを追加します。 (コミット)廃止通知にジェム名と廃止の時期を渡すようにします。 (プルリクエスト)
バージョン付きのキャッシュエントリをサポートします。これにより、キャッシュストアはキャッシュキーを再利用し、頻繁な変更がある場合に大幅なストレージの節約が可能になります。Active Record の
#cache_key
と#cache_version
の分離と、Action Pack のフラグメントキャッシュでの使用と一緒に機能します。 (プルリクエスト)スレッドごとに属性を保持するための
ActiveSupport::CurrentAttributes
を追加します。主な使用例は、すべてのリクエストごとの属性をシステム全体で簡単に利用できるようにすることです。 (プルリクエスト)指定されたロケールの場合に
#singularize
と#pluralize
が不可算名詞を考慮するようになりました。 (コミット)class_attribute
にデフォルトオプションを追加します。 (プルリクエスト)Date#prev_occurring
とDate#next_occurring
を追加し、指定された前後の曜日を返します。 (プルリクエスト)モジュールとクラスの属性アクセサにデフォルトオプションを追加します。 (プルリクエスト)
キャッシュ:
write_multi
を追加します。 (プルリクエスト)デフォルトで
ActiveSupport::MessageEncryptor
が AES 256 GCM 暗号化を使用するようにします。 (プルリクエスト)テストで時間を
Time.now
に固定するためのfreeze_time
ヘルパーを追加します。 (プルリクエスト)Hash#reverse_merge!
の順序をHashWithIndifferentAccess
と一貫させます。 (プルリクエスト)ActiveSupport::MessageVerifier
とActiveSupport::MessageEncryptor
に目的と有効期限のサポートを追加します。 (プルリクエスト)String#camelize
を更新し、間違ったオプションが渡された場合にフィードバックを提供するようにします。 (プルリクエスト)Module#delegate_missing_to
は、ターゲットが nil の場合にDelegationError
を発生させるようになりました。これはModule#delegate
と同様です。 (プルリクエスト)ActiveSupport::EncryptedFile
とActiveSupport::EncryptedConfiguration
を追加します。 (プルリクエスト)本番アプリの秘密情報を保存するための
config/credentials.yml.enc
を追加します。 (プルリクエスト)MessageEncryptor
とMessageVerifier
にキーのローテーションサポートを追加します。 (プルリクエスト)HashWithIndifferentAccess#transform_keys
からHashWithIndifferentAccess
のインスタンスを返します。 (プルリクエスト)Hash#slice
は、定義されている場合は Ruby 2.5+ の組み込み定義にフォールバックします。 (コミット)IO#to_json
は、配列に変換しようとせずにto_s
の表現を返すようになりました。これにより、IO#to_json
を読み取り不可なオブジェクトで呼び出した場合にIOError
が発生するバグが修正されます。 (プルリクエスト)Time#prev_day
とTime#next_day
のメソッドシグネチャをDate#prev_day
とDate#next_day
に合わせるために同じメソッドシグネチャを追加します。Time#prev_day
とTime#next_day
に引数を渡すことができるようになります。 (コミット)Time#prev_month
とTime#next_month
のメソッドシグネチャをDate#prev_month
とDate#next_month
に合わせるために同じメソッドシグネチャを追加します。Time#prev_month
とTime#next_month
に引数を渡すことができるようになります。 (コミット)Time#prev_year
とTime#next_year
のメソッドシグネチャをDate#prev_year
とDate#next_year
に合わせるために同じメソッドシグネチャを追加します。Time#prev_year
とTime#next_year
に引数を渡すことができるようになります。 (コミット)humanize
での略語サポートを修正しました。 (Commit)TWZ範囲での
Range#include?
を許可しました。 (Pull Request)キャッシュ:1kBを超える値に対してデフォルトで圧縮を有効にしました。 (Pull Request)
Redisキャッシュストア。 (Pull Request, Pull Request)
TZInfo::AmbiguousTime
エラーを処理するようにしました。 (Pull Request)MemCacheStore:期限切れのカウンターをサポートします。 (Commit)
ActiveSupport::TimeZone.all
がActiveSupport::TimeZone::MAPPING
にあるタイムゾーンのみを返すようにしました。 (Pull Request)ActiveSupport::SecurityUtils.secure_compare
のデフォルトの動作を変更し、可変長の文字列でも長さ情報を漏洩しないようにしました。 以前のActiveSupport::SecurityUtils.secure_compare
をfixed_length_secure_compare
に名前を変更し、渡された文字列の長さの不一致の場合にはArgumentError
を発生させるようにしました。 (Pull Request)非機密なダイジェスト(例:ETagヘッダー)を生成するためにSHA-1を使用します。 (Pull Request, Pull Request)
assert_changes
は、from:
とto:
の引数の組み合わせに関係なく、常に式が変化することをアサートします。 (Pull Request)ActiveSupport::Cache::Store
のread_multi
に欠けているインストルメンテーションを追加します。 (Pull Request)assert_difference
の最初の引数としてハッシュをサポートします。 これにより、同じアサーション内で複数の数値の差異を指定することができます。 (Pull Request)キャッシュ:MemCacheとRedisの
read_multi
およびfetch_multi
の高速化。 バックエンドを参照する前に、ローカルのインメモリキャッシュから読み取ります。 (Commit)
11 Active Job
詳細な変更については、Changelogを参照してください。
11.1 注目すべき変更点
ActiveJob::Base.discard_on
にブロックを渡すことで、破棄されるジョブのカスタム処理を許可します。 (Pull Request)
12 Ruby on Rails Guides
詳細な変更については、Changelogを参照してください。
12.1 注目すべき変更点
Threading and Code Execution in Railsガイドを追加しました。 (Pull Request)
Active Storage Overviewガイドを追加しました。 (Pull Request)
13 Credits
Railsへの多くの時間を費やした多くの人々に感謝します。 Railsへの貢献者の完全なリストを参照してください。 彼ら全員に賞賛を送ります。
フィードバック
このガイドの品質向上にご協力ください。
タイポや事実の誤りを見つけた場合は、ぜひ貢献してください。 開始するには、ドキュメントへの貢献セクションを読んでください。
不完全なコンテンツや最新でない情報も見つかるかもしれません。 メインのドキュメントに不足しているドキュメントを追加してください。 修正済みかどうかは、まずEdge Guidesを確認してください。 スタイルと規約については、Ruby on Rails Guides Guidelinesを確認してください。
修正すべき点を見つけたが、自分で修正できない場合は、 問題を報告してください。
そして最後に、Ruby on Railsのドキュメントに関するあらゆる議論は、公式のRuby on Railsフォーラムで大歓迎です。