なるようになるブログ

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

rails commit log流し読み(2015/04/20)

2015/04/20分のコミットです。

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


Update 4_2_release_notes.md

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

rails serverのデフォルトホスト変更(0.0.0.0 -> localhost)の説明の箇所で、127.0.0.1:3000にアクセスした場合、以前と同様に開発出来る、 と説明されていたのですが、環境によっては127.0.0.1:3000ではアクセス出来ないため、説明を修正しています。


Raise StaleObjectError if touched object is stale and locking is enabled

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

楽観的ロックを使用している、かつ、対象のデータが更新されている場合に、別のオブジェクトからtouch メソッドで更新済みのデータを更新しようとした際に、 StaleObjectErrorがraiseされないバグがあったのを修正しています。


Use _read_attribute(primary_key) instead of id

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

touchメソッドで、primary keyを指定する際に、idではなく、_read_attribute(primary_key)を使用するよう修正しています。primary keyのカラム名id以外だった場合の事を考慮して、ですかね。


Add a "generic" bug report template

バグレポート用テンプレートファイルに、汎用的に使用する用のテンプレートファイルを追加しています。

元々バグレポート用テンプレートはActionControllerActiveRecord用しかなく、それ以外用、という位置づけとの事です。

内容は以下の通りです。

unless File.exist?('Gemfile')
  File.write('Gemfile', <<-GEMFILE)
    source 'https://rubygems.org'
    gem 'rails', github: 'rails/rails'
    gem 'arel', github: 'rails/arel'
  GEMFILE

  system 'bundle'
end

require 'bundler'
Bundler.setup(:default)

require 'active_support'
require 'active_support/core_ext/object/blank'
require 'minitest/autorun'

# Ensure backward compatibility with Minitest 4
Minitest::Test = MiniTest::Unit::TestCase unless defined?(Minitest::Test)

class BugTest < Minitest::Test
  def test_stuff
    assert "zomg".present?
    refute "".present?
  end
end

Fix sidekiq test order dependency

activejob/test/integration/queuing_test.rbactivejob/test/support/integration/adapters/sidekiq.rbの修正です。

テストコードの中で行っていたsidekiq/testingのrequire処理をactivejob/test/support/integration/adapters/sidekiq.rbの先頭で行うよう修正しています。


Shuffle a few things in aid of easier debugging

activejob/test/support/integration/adapters/sidekiq.rbの修正です。

  • 出力内容を隠さないよう修正
  • 処理が終わるまでwaitするよう修正
  • 処理のwaitにsleepを使用していたのをpipeを使用するよう修正
  • 不要なpidfileの削除

上記をまとめて行っています


Only configure the queue in setup; DB creation must come later

activejob/test/support/integration/adapters/que.rbactivejob/test/support/integration/adapters/queue_classic.rbの修正です。

adapterの設定をsetup処理で行うよう修正しています。


Better explain the bug report templates [ci skip]

rails guideのContributing to Ruby on Railsの修正です。

バグ報告用の説明を修正、及び先にコミットされたgenericテンプレートについての説明を追加しています。


Fix typos in contributing guide [ci skip]

rails guideのContributing to Ruby on Railsの修正です。

上記修正した内容にタイポがあったのを修正しています。


Consistency: Rails master -> edge Rails [ci skip]

rails guideのContributing to Ruby on Railsの修正です。

Rails master -> edge Railsに表記を修正しています。


Implicitly skip spring for rails new --dev

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

rails new --devした際に、Gemfileにspringを含まないよう修正しています。

devオプションを指定している際は、恐らくrails自体のコードを修正するときで、springを使用しているとコードを修正する度にいちいちspringの再起動をする必要があり、手間なのでは、という事で使用しないように修正したようです。


correct link to Generic template [ci skip]

rails guideのContributing to Ruby on Railsの修正です。

先にコミットされたgenericテンプレートについての説明で、genericテンプレートへのリンクを設定したのですが、そのリンク先に誤りがあったのを修正しています。


capitalize title

rails guideのContributing to Ruby on Railsの修正です。

Create an executable test caseCreate an Executable Test Caseに修正しています。

Ruby on Rails Guides Guidelinesにセクションのタイトル名は大文字から始める事、とあり、それに従い修正したようです。