<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,5 +1,9 @@
 == master
 
+* Add dependency on Rails 2.3
+* Add dependency on plugin_test_helper 0.3.0
+* Add dependency on state_machine 0.7.0
+
 == 0.3.1 / 2009-01-11
 
 * Use a state machine for the hidden_at field on Message/MessageRecipient</diff>
      <filename>CHANGELOG.rdoc</filename>
    </modified>
    <modified>
      <diff>@@ -28,8 +28,8 @@ between users, but can also act as a way for the web application to send notices
 and other notifications to users.
 
 Designing and building a framework that supports this can be complex and takes
-away from the business focus.  This plugin can help ease that process by demonstrating
-a complete implementation of these features.
+away from the business focus.  This plugin can help ease that process by
+demonstrating a reference implementation of these features.
 
 == Usage
 
@@ -45,7 +45,7 @@ This will build the following associations:
 * +sent_messages+
 * +received_messages+
 
-If you have more specified needs, you can create the same associations manually
+If you have more specific needs, you can create the same associations manually
 that +has_messages+ builds.  See HasMessages::MacroMethods#has_messages
 for more information about the asssociations that are generated from this macro.
 
@@ -97,6 +97,5 @@ To run against a specific version of Rails:
 
 == Dependencies
 
-* Rails 2.1 or later
+* Rails 2.3 or later
 * state_machine[http://github.com/pluginaweek/state_machine]
-* plugins_plus[http://github.com/pluginaweek/plugins_plugins] (optional if app files are copied to your project tree)</diff>
      <filename>README.rdoc</filename>
    </modified>
    <modified>
      <diff>@@ -26,37 +26,28 @@
 # * +hide+ -Hides the message from the sender
 # * +unhide+ - Makes the message visible again
 class Message &lt; ActiveRecord::Base
-  belongs_to  :sender,
-                :polymorphic =&gt; true
-  has_many    :recipients,
-                :class_name =&gt; 'MessageRecipient',
-                :order =&gt; 'kind DESC, position ASC',
-                :dependent =&gt; :destroy
+  belongs_to  :sender, :polymorphic =&gt; true
+  has_many    :recipients, :class_name =&gt; 'MessageRecipient', :order =&gt; 'kind DESC, position ASC', :dependent =&gt; :destroy
   
-  validates_presence_of :state,
-                        :sender_id,
-                        :sender_type
+  validates_presence_of :state, :sender_id, :sender_type
   
-  attr_accessible :subject,
-                  :body,
-                  :to, :cc, :bcc
+  attr_accessible :subject, :body, :to, :cc, :bcc
   
   after_save :update_recipients
   
-  named_scope :visible,
-                :conditions =&gt; {:hidden_at =&gt; nil}
+  named_scope :visible, :conditions =&gt; {:hidden_at =&gt; nil}
   
   # Define actions for the message
   state_machine :state, :initial =&gt; :unsent do
     # Queues the message so that it's sent in a separate process
     event :queue do
-      transition :to =&gt; :queued, :from =&gt; :unsent, :if =&gt; :has_recipients?
+      transition :unsent =&gt; :queued, :if =&gt; :has_recipients?
     end
     
     # Sends the message to all of the recipients as long as at least one
     # recipient has been added
     event :deliver do
-      transition :to =&gt; :sent, :from =&gt; [:unsent, :queued], :if =&gt; :has_recipients?
+      transition [:unsent, :queued] =&gt; :sent, :if =&gt; :has_recipients?
     end
   end
   
@@ -64,12 +55,12 @@ class Message &lt; ActiveRecord::Base
   state_machine :hidden_at, :initial =&gt; :visible do
     # Hides the message from the recipient's inbox
     event :hide do
-      transition :to =&gt; :hidden
+      transition all =&gt; :hidden
     end
     
     # Makes the message visible in the recipient's inbox
     event :unhide do
-      transition :to =&gt; :visible
+      transition all =&gt; :visible
     end
     
     state :visible, :value =&gt; nil</diff>
      <filename>app/models/message.rb</filename>
    </modified>
    <modified>
      <diff>@@ -27,41 +27,26 @@
 # * +unhide+ - Makes the message visible again
 class MessageRecipient &lt; ActiveRecord::Base
   belongs_to  :message
-  belongs_to  :receiver,
-                :polymorphic =&gt; true
+  belongs_to  :receiver, :polymorphic =&gt; true
   
-  validates_presence_of :message_id,
-                        :kind,
-                        :state,
-                        :receiver_id,
-                        :receiver_type
+  validates_presence_of :message_id, :kind, :state, :receiver_id, :receiver_type
   
-  attr_protected  :state,
-                  :position,
-                  :hidden_at
+  attr_protected :state, :position, :hidden_at
   
   before_create :set_position
   before_destroy :reorder_positions
   
   # Make this class look like the actual message
-  delegate  :sender,
-            :subject,
-            :body,
-            :recipients,
-            :to,
-            :cc,
-            :bcc,
-            :created_at,
+  delegate  :sender, :subject, :body, :recipients, :to, :cc, :bcc, :created_at,
               :to =&gt; :message
   
-  named_scope :visible,
-                :conditions =&gt; {:hidden_at =&gt; nil}
+  named_scope :visible, :conditions =&gt; {:hidden_at =&gt; nil}
   
   # Defines actions for the recipient
   state_machine :state, :initial =&gt; :unread do
     # Indicates that the message has been viewed by the receiver
     event :view do
-      transition :to =&gt; :read, :from =&gt; :unread, :if =&gt; :message_sent?
+      transition :unread =&gt; :read, :if =&gt; :message_sent?
     end
   end
   
@@ -69,12 +54,12 @@ class MessageRecipient &lt; ActiveRecord::Base
   state_machine :hidden_at, :initial =&gt; :visible do
     # Hides the message from the recipient's inbox
     event :hide do
-      transition :to =&gt; :hidden
+      transition all =&gt; :hidden
     end
     
     # Makes the message visible in the recipient's inbox
     event :unhide do
-      transition :to =&gt; :visible
+      transition all =&gt; :visible
     end
     
     state :visible, :value =&gt; nil</diff>
      <filename>app/models/message_recipient.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,8 +2,7 @@ class CreateMessages &lt; ActiveRecord::Migration
   def self.up
     create_table :messages do |t|
       t.references :sender, :polymorphic =&gt; true, :null =&gt; false
-      t.text :subject
-      t.text :body
+      t.text :subject, :body
       t.string :state, :null =&gt; false
       t.datetime :hidden_at
       t.string :type</diff>
      <filename>db/migrate/001_create_messages.rb</filename>
    </modified>
    <modified>
      <diff>@@ -4,12 +4,15 @@ require 'state_machine'
 module HasMessages
   module MacroMethods
     # Creates the following message associations:
-    # * +messages+ - Messages that were composed and are visible to the owner.  Mesages may have been sent or unsent.
-    # * +received_messages - Messages that have been received from others and are visible.  Messages may have been read or unread.
+    # * +messages+ - Messages that were composed and are visible to the owner.
+    #   Mesages may have been sent or unsent.
+    # * +received_messages - Messages that have been received from others and
+    #   are visible.  Messages may have been read or unread.
     # 
     # == Creating new messages
     # 
-    # To create a new message, the +messages+ association should be used, for example:
+    # To create a new message, the +messages+ association should be used,
+    # for example:
     # 
     #   user = User.find(123)
     #   message = user.messages.build</diff>
      <filename>lib/has_messages.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 require 'config/boot'
-require &quot;#{File.dirname(__FILE__)}/../../../../plugins_plus/boot&quot;
 
 Rails::Initializer.run do |config|
   config.plugin_paths &lt;&lt; '..'
-  config.plugins = %w(plugins_plus state_machine has_messages)
+  config.plugins = %w(state_machine has_messages)
   config.cache_classes = false
   config.whiny_nils = true
+  config.action_controller.session = {:key =&gt; 'rails_session', :secret =&gt; 'd229e4d22437432705ab3985d4d246'}
 end</diff>
      <filename>test/app_root/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,13 @@
 class MigrateHasMessagesToVersion2 &lt; ActiveRecord::Migration
   def self.up
-    Rails::Plugin.find(:has_messages).migrate(2)
+    ActiveRecord::Migrator.new(:up, &quot;#{Rails.root}/../../db/migrate&quot;, 0).migrations.each do |migration|
+      migration.migrate(:up)
+    end
   end
   
   def self.down
-    Rails::Plugin.find(:has_messages).migrate(0)
+    ActiveRecord::Migrator.new(:up, &quot;#{Rails.root}/../../db/migrate&quot;, 0).migrations.each do |migration|
+      migration.migrate(:down)
+    end
   end
 end</diff>
      <filename>test/app_root/db/migrate/002_migrate_has_messages_to_version_2.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,6 @@
 require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
 
-class UserByDefaultTest &lt; Test::Unit::TestCase
+class UserByDefaultTest &lt; ActiveSupport::TestCase
   def setup
     @user = create_user
   end
@@ -22,7 +22,7 @@ class UserByDefaultTest &lt; Test::Unit::TestCase
   end
 end
 
-class UserTest &lt; Test::Unit::TestCase
+class UserTest &lt; ActiveSupport::TestCase
   def setup
     @user = create_user
   end
@@ -40,7 +40,7 @@ class UserTest &lt; Test::Unit::TestCase
   end
 end
 
-class UserWithUnsentMessages &lt; Test::Unit::TestCase
+class UserWithUnsentMessages &lt; ActiveSupport::TestCase
   def setup
     @user = create_user
     @sent_message = create_message(:sender =&gt; @user, :to =&gt; create_user(:login =&gt; 'you'))
@@ -58,7 +58,7 @@ class UserWithUnsentMessages &lt; Test::Unit::TestCase
   end
 end
 
-class UserWithSentMessages &lt; Test::Unit::TestCase
+class UserWithSentMessages &lt; ActiveSupport::TestCase
   def setup
     @user = create_user
     @to = create_user(:login =&gt; 'you')
@@ -80,7 +80,7 @@ class UserWithSentMessages &lt; Test::Unit::TestCase
   end
 end
 
-class UserWithReceivedMessages &lt; Test::Unit::TestCase
+class UserWithReceivedMessages &lt; ActiveSupport::TestCase
   def setup
     @sender = create_user
     @user = create_user(:login =&gt; 'me')
@@ -99,7 +99,7 @@ class UserWithReceivedMessages &lt; Test::Unit::TestCase
   end
 end
 
-class UserWithHiddenMessagesTest &lt; Test::Unit::TestCase
+class UserWithHiddenMessagesTest &lt; ActiveSupport::TestCase
   def setup
     @user = create_user
     @friend = create_user(:login =&gt; 'you')</diff>
      <filename>test/functional/has_messages_test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,6 @@
 require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
 
-class MessageRecipientByDefaultTest &lt; Test::Unit::TestCase
+class MessageRecipientByDefaultTest &lt; ActiveSupport::TestCase
   def setup
     @recipient = MessageRecipient.new
   end
@@ -35,7 +35,7 @@ class MessageRecipientByDefaultTest &lt; Test::Unit::TestCase
   end
 end
 
-class MesageRecipientTest &lt; Test::Unit::TestCase
+class MesageRecipientTest &lt; ActiveSupport::TestCase
   def test_should_be_valid_with_a_set_of_valid_attributes
     recipient = new_message_recipient
     assert recipient.valid?
@@ -99,7 +99,7 @@ class MesageRecipientTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientAfterBeingCreatedTest &lt; Test::Unit::TestCase
+class MessageRecipientAfterBeingCreatedTest &lt; ActiveSupport::TestCase
   def setup
     @admin = create_user(:login =&gt; 'admin')
     @erich = create_user(:login =&gt; 'Erich')
@@ -157,7 +157,7 @@ class MessageRecipientAfterBeingCreatedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientOfMultipleTest &lt; Test::Unit::TestCase
+class MessageRecipientOfMultipleTest &lt; ActiveSupport::TestCase
   def setup
     @erich = create_user(:login =&gt; 'Erich')
     @richard = create_user(:login =&gt; 'Richard')
@@ -176,7 +176,7 @@ class MessageRecipientOfMultipleTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientUnreadWithUnsentMessageTest &lt; Test::Unit::TestCase
+class MessageRecipientUnreadWithUnsentMessageTest &lt; ActiveSupport::TestCase
   def setup
     @recipient = create_message_recipient
   end
@@ -190,7 +190,7 @@ class MessageRecipientUnreadWithUnsentMessageTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientUnreadWithSentMessageTest &lt; Test::Unit::TestCase
+class MessageRecipientUnreadWithSentMessageTest &lt; ActiveSupport::TestCase
   def setup
     @recipient = create_message_recipient
     @recipient.message.deliver
@@ -205,7 +205,7 @@ class MessageRecipientUnreadWithSentMessageTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientReadTest &lt; Test::Unit::TestCase
+class MessageRecipientReadTest &lt; ActiveSupport::TestCase
   def setup
     @recipient = create_message_recipient
     @recipient.message.deliver
@@ -221,7 +221,7 @@ class MessageRecipientReadTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientHiddenTest &lt; Test::Unit::TestCase
+class MessageRecipientHiddenTest &lt; ActiveSupport::TestCase
   def setup
     @recipient = create_message_recipient
     @recipient.hide
@@ -240,7 +240,7 @@ class MessageRecipientHiddenTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientUnhiddenTest &lt; Test::Unit::TestCase
+class MessageRecipientUnhiddenTest &lt; ActiveSupport::TestCase
   def setup
     @recipient = create_message_recipient
     @recipient.hide
@@ -260,7 +260,7 @@ class MessageRecipientUnhiddenTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientForwardedTest &lt; Test::Unit::TestCase
+class MessageRecipientForwardedTest &lt; ActiveSupport::TestCase
   def setup
     @erich = create_user(:login =&gt; 'Erich')
     original_message = create_message(
@@ -309,7 +309,7 @@ class MessageRecipientForwardedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientRepliedTest &lt; Test::Unit::TestCase
+class MessageRecipientRepliedTest &lt; ActiveSupport::TestCase
   def setup
     @erich = create_user(:login =&gt; 'Erich')
     @john = create_user(:login =&gt; 'John')
@@ -360,7 +360,7 @@ class MessageRecipientRepliedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientRepliedToAllTest &lt; Test::Unit::TestCase
+class MessageRecipientRepliedToAllTest &lt; ActiveSupport::TestCase
   def setup
     @erich = create_user(:login =&gt; 'Erich')
     @john = create_user(:login =&gt; 'John')
@@ -413,7 +413,7 @@ class MessageRecipientRepliedToAllTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientAfterBeingDestroyedTest &lt; Test::Unit::TestCase
+class MessageRecipientAfterBeingDestroyedTest &lt; ActiveSupport::TestCase
   def setup
     message = create_message
     @first_recipient = create_message_recipient(
@@ -436,7 +436,7 @@ class MessageRecipientAfterBeingDestroyedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRecipientAsAClassTest &lt; Test::Unit::TestCase
+class MessageRecipientAsAClassTest &lt; ActiveSupport::TestCase
   def setup
     message = create_message
     @hidden_recipient = create_message_recipient(:message =&gt; message, :receiver =&gt; create_user(:login =&gt; 'erich'), :hidden_at =&gt; Time.now)</diff>
      <filename>test/unit/message_recipient_test.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,6 @@
 require File.expand_path(File.dirname(__FILE__) + '/../test_helper')
 
-class MessageByDefaultTest &lt; Test::Unit::TestCase
+class MessageByDefaultTest &lt; ActiveSupport::TestCase
   def setup
     @message = Message.new
   end
@@ -27,7 +27,7 @@ class MessageByDefaultTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageTest &lt; Test::Unit::TestCase
+class MessageTest &lt; ActiveSupport::TestCase
   def test_should_be_valid_with_a_set_of_valid_attributes
     message = new_message
     assert message.valid?
@@ -88,7 +88,7 @@ class MessageTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageBeforeBeingCreatedTest &lt; Test::Unit::TestCase
+class MessageBeforeBeingCreatedTest &lt; ActiveSupport::TestCase
   def setup
     @message = new_message
   end
@@ -128,7 +128,7 @@ class MessageBeforeBeingCreatedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MesageAfterBeingCreatedTest &lt; Test::Unit::TestCase
+class MesageAfterBeingCreatedTest &lt; ActiveSupport::TestCase
   def setup
     @message = create_message
   end
@@ -176,7 +176,7 @@ class MesageAfterBeingCreatedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageWithoutRecipientsTest &lt; Test::Unit::TestCase
+class MessageWithoutRecipientsTest &lt; ActiveSupport::TestCase
   def setup
     @message = create_message
   end
@@ -190,7 +190,7 @@ class MessageWithoutRecipientsTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageWithRecipientsTest &lt; Test::Unit::TestCase
+class MessageWithRecipientsTest &lt; ActiveSupport::TestCase
   def setup
     @erich = create_user(:login =&gt; 'Erich')
     @richard = create_user(:login =&gt; 'Richard')
@@ -227,7 +227,7 @@ class MessageWithRecipientsTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageQueuedTest &lt; Test::Unit::TestCase
+class MessageQueuedTest &lt; ActiveSupport::TestCase
   def setup
     @message = create_message(:to =&gt; create_user(:login =&gt; 'coward'))
     @message.queue
@@ -246,7 +246,7 @@ class MessageQueuedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageDeliveredTest &lt; Test::Unit::TestCase
+class MessageDeliveredTest &lt; ActiveSupport::TestCase
   def setup
     @message = create_message(:to =&gt; create_user(:login =&gt; 'coward'))
     @message.deliver
@@ -265,7 +265,7 @@ class MessageDeliveredTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageHiddenTest &lt; Test::Unit::TestCase
+class MessageHiddenTest &lt; ActiveSupport::TestCase
   def setup
     @message = create_message
     @message.hide
@@ -284,7 +284,7 @@ class MessageHiddenTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageUnhiddenTest &lt; Test::Unit::TestCase
+class MessageUnhiddenTest &lt; ActiveSupport::TestCase
   def setup
     @message = create_message
     @message.hide
@@ -304,7 +304,7 @@ class MessageUnhiddenTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageForwardedTest &lt; Test::Unit::TestCase
+class MessageForwardedTest &lt; ActiveSupport::TestCase
   def setup
     @admin = create_user(:login =&gt; 'admin')
     original_message = create_message(
@@ -351,7 +351,7 @@ class MessageForwardedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRepliedTest &lt; Test::Unit::TestCase
+class MessageRepliedTest &lt; ActiveSupport::TestCase
   def setup
     @admin = create_user(:login =&gt; 'admin')
     @erich = create_user(:login =&gt; 'Erich')
@@ -402,7 +402,7 @@ class MessageRepliedTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageRepliedToAllTest &lt; Test::Unit::TestCase
+class MessageRepliedToAllTest &lt; ActiveSupport::TestCase
   def setup
     @admin = create_user(:login =&gt; 'admin')
     @erich = create_user(:login =&gt; 'Erich')
@@ -453,7 +453,7 @@ class MessageRepliedToAllTest &lt; Test::Unit::TestCase
   end
 end
 
-class MessageAsAClassTest &lt; Test::Unit::TestCase
+class MessageAsAClassTest &lt; ActiveSupport::TestCase
   def setup
     @hidden_message = create_message(:hidden_at =&gt; Time.now)
     @visible_message = create_message</diff>
      <filename>test/unit/message_test.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>50f032db3ae9e761411b36a97f2bd6000dfdaea7</id>
    </parent>
  </parents>
  <author>
    <name>Aaron Pfeifer</name>
    <email>aaron.pfeifer@gmail.com</email>
  </author>
  <url>http://github.com/pluginaweek/has_messages/commit/8ffa5d6b2cc3d3fba005f4e553c8ad211c562ad2</url>
  <id>8ffa5d6b2cc3d3fba005f4e553c8ad211c562ad2</id>
  <committed-date>2009-04-19T12:21:26-07:00</committed-date>
  <authored-date>2009-04-19T12:21:26-07:00</authored-date>
  <message>Add dependency on Rails 2.3
Add dependency on plugin_test_helper 0.3.0
Add dependency on state_machine 0.7.0</message>
  <tree>ec40d2b3d6912287738b091389b56c587390cf41</tree>
  <committer>
    <name>Aaron Pfeifer</name>
    <email>aaron.pfeifer@gmail.com</email>
  </committer>
</commit>
