<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,5 +1,7 @@
 *2.3.0/3.0*
 
+* Fixed that ActiveRecord::Base#new_record? should return false (not nil) for existing records #1219 [Yaroslav Markin]
+
 * I18n the word separator for error messages. Introduces the activerecord.errors.format.separator translation key.  #1294 [Akira Matsuda]
 
 * Add :having as a key to find and the relevant associations.  [Emilio Tagua]</diff>
      <filename>activerecord/CHANGELOG</filename>
    </modified>
    <modified>
      <diff>@@ -2406,9 +2406,9 @@ module ActiveRecord #:nodoc:
         write_attribute(self.class.primary_key, value)
       end
 
-      # Returns true if this object hasn't been saved yet -- that is, a record for the object doesn't exist yet.
+      # Returns true if this object hasn't been saved yet -- that is, a record for the object doesn't exist yet; otherwise, returns false.
       def new_record?
-        defined?(@new_record) &amp;&amp; @new_record
+        (defined?(@new_record) &amp;&amp; @new_record) || false
       end
 
       # :call-seq:</diff>
      <filename>activerecord/lib/active_record/base.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1198,6 +1198,11 @@ class BasicsTest &lt; ActiveRecord::TestCase
     assert b_true.value?
   end
 
+  def test_new_record_returns_boolean
+    assert_equal Topic.new.new_record?, true
+    assert_equal Topic.find(1).new_record?, false
+  end
+
   def test_clone
     topic = Topic.find(1)
     cloned_topic = nil</diff>
      <filename>activerecord/test/cases/base_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>4f043a48381c142e308824e3b7e15435a61bbb53</id>
    </parent>
  </parents>
  <author>
    <name>Yaroslav Markin</name>
    <email>yaroslav@markin.net</email>
  </author>
  <url>http://github.com/rails/rails/commit/6e98adfc8e19a39fa45d4acd94145d318d151964</url>
  <id>6e98adfc8e19a39fa45d4acd94145d318d151964</id>
  <committed-date>2008-12-27T05:36:11-08:00</committed-date>
  <authored-date>2008-12-27T05:26:13-08:00</authored-date>
  <message>ActiveRecord::Base#new_record? now returns false for existing records (was nil) [#1219 state:committed]

Signed-off-by: David Heinemeier Hansson &lt;david@loudthinking.com&gt;</message>
  <tree>014c82461f81ee3bdf42e1a5574cef92e96051a2</tree>
  <committer>
    <name>David Heinemeier Hansson</name>
    <email>david@loudthinking.com</email>
  </committer>
</commit>
