<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>railties/guides/files/javascripts/code_highlighter.js</filename>
    </added>
    <added>
      <filename>railties/guides/files/javascripts/guides.js</filename>
    </added>
    <added>
      <filename>railties/guides/files/javascripts/highlighters.js</filename>
    </added>
    <added>
      <filename>railties/guides/files/stylesheets/main.css</filename>
    </added>
    <added>
      <filename>railties/guides/files/stylesheets/print.css</filename>
    </added>
    <added>
      <filename>railties/guides/files/stylesheets/reset.css</filename>
    </added>
    <added>
      <filename>railties/guides/files/stylesheets/style.css</filename>
    </added>
    <added>
      <filename>railties/guides/files/stylesheets/syntax.css</filename>
    </added>
    <added>
      <filename>railties/guides/images/belongs_to.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/book_icon.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/bullet.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/chapters_icon.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/check_bullet.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/credits_pic_blank.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/csrf.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/customized_error_messages.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/error_messages.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/feature_tile.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/footer_tile.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/grey_bullet.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/habtm.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/has_many.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/has_many_through.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/has_one.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/has_one_through.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/header_backdrop.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/header_tile.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/i18n/demo_localized_pirate.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/i18n/demo_translated_en.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/i18n/demo_translated_pirate.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/i18n/demo_translation_missing.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/i18n/demo_untranslated.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/README</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/1.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/10.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/11.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/12.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/13.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/14.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/15.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/2.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/3.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/4.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/5.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/6.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/7.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/8.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/callouts/9.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/caution.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/example.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/home.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/important.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/next.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/note.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/prev.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/tip.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/up.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/icons/warning.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/nav_arrow.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/polymorphic.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/posts_index.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/rails_logo_remix.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/rails_welcome.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/ruby_guides_logo.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/ruby_on_rails_by_mike_rundle2.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/session_fixation.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/tab_grey.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/tab_info.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/tab_note.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/tab_red.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/tab_yellow.gif</filename>
    </added>
    <added>
      <filename>railties/guides/images/tab_yellow.png</filename>
    </added>
    <added>
      <filename>railties/guides/images/validation_error_messages.png</filename>
    </added>
    <added>
      <filename>railties/guides/rails_guides.rb</filename>
    </added>
    <added>
      <filename>railties/guides/rails_guides/generator.rb</filename>
    </added>
    <added>
      <filename>railties/guides/rails_guides/helpers.rb</filename>
    </added>
    <added>
      <filename>railties/guides/rails_guides/indexer.rb</filename>
    </added>
    <added>
      <filename>railties/guides/rails_guides/textile_extensions.rb</filename>
    </added>
    <added>
      <filename>railties/guides/source/2_2_release_notes.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/2_3_release_notes.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/action_controller_overview.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/action_mailer_basics.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/active_record_basics.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/active_record_querying.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/activerecord_validations_callbacks.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/association_basics.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/caching_with_rails.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/command_line.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/configuring.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/credits.erb.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/debugging_rails_applications.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/form_helpers.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/getting_started.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/i18n.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/index.erb.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/layout.html.erb</filename>
    </added>
    <added>
      <filename>railties/guides/source/layouts_and_rendering.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/migrations.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/performance_testing.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/plugins.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/rails_on_rack.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/routing.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/security.textile</filename>
    </added>
    <added>
      <filename>railties/guides/source/testing.textile</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -14,6 +14,7 @@ railties/pkg
 railties/test/500.html
 railties/doc/guides/html/images
 railties/doc/guides/html/stylesheets
+railties/guides/output
 *.rbc
 *.swp
 *.swo</diff>
      <filename>.gitignore</filename>
    </modified>
    <modified>
      <diff>@@ -1090,6 +1090,22 @@ module ActiveRecord
       # but it in fact generates a join table name of &quot;paper_boxes_papers&quot;.  Be aware of this caveat, and use the
       # custom &lt;tt&gt;:join_table&lt;/tt&gt; option if you need to.
       #
+      # The join table should not have a primary key or a model associated with it. You must manually generate the
+      # join table with a migration such as this:
+      #
+      #   class CreateDevelopersProjectsJoinTable &lt; ActiveRecord::Migration
+      #     def self.up
+      #       create_table :developers_projects, :id =&gt; false do |t|
+      #         t.integer :developer_id
+      #         t.integer :project_id
+      #       end
+      #     end
+      #
+      #     def self.down
+      #       drop_table :developers_projects
+      #     end
+      #   end
+      #
       # Deprecated: Any additional fields added to the join table will be placed as attributes when pulling records out through
       # +has_and_belongs_to_many+ associations. Records returned from join tables with additional attributes will be marked as
       # readonly (because we can't save changes to the additional attributes). It's strongly recommended that you upgrade any</diff>
      <filename>activerecord/lib/active_record/associations.rb</filename>
    </modified>
    <modified>
      <diff>@@ -244,6 +244,11 @@ def copy_with_rewritten_ruby_path(src_file, dest_file)
   end
 end
 
+desc 'Generate guides (for authors), use ONLY=foo to process just &quot;foo.textile&quot;'
+task :guides do
+  ruby &quot;guides/rails_guides.rb&quot;
+end
+
 
 # Generate documentation ------------------------------------------------------------------
 </diff>
      <filename>railties/Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -54,15 +54,8 @@ namespace :doc do
 
   desc &quot;Generate Rails guides&quot;
   task :guides do
-    source = File.join(RAILTIES_PATH, &quot;doc/guides&quot;)
-    destination = File.join(RAILS_ROOT, &quot;doc/guides&quot;)
-    FileUtils.rm_r(destination) if File.directory?(destination)
-    FileUtils.mkdir(destination)
-
-    FileUtils.cp_r File.join(source, 'html/.'), File.join(destination)
-    # Copy images and css files to html directory. These dirs are in .gitigore and shouldn't be source controlled.
-    FileUtils.cp_r File.join(source, 'source/images'), File.join(destination)
-    FileUtils.cp_r File.join(source, 'source/stylesheets'), File.join(destination, 'stylesheets')
+    require File.join(RAILTIES_PATH, &quot;guides/rails_guides&quot;)
+    RailsGuides::Generator.new(File.join(RAILS_ROOT, &quot;doc/guides&quot;)).generate
   end
 
   namespace :plugins do</diff>
      <filename>railties/lib/tasks/documentation.rake</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>bccd2c54b2c7708f881faf9c9464dcf29bd30bef</id>
    </parent>
  </parents>
  <author>
    <name>Pratik Naik</name>
    <email>pratiknaik@gmail.com</email>
  </author>
  <url>http://github.com/methodmissing/rails/commit/96d610553e5fdaabc923835ab1f194070ddb4477</url>
  <id>96d610553e5fdaabc923835ab1f194070ddb4477</id>
  <committed-date>2009-02-05T18:01:22-08:00</committed-date>
  <authored-date>2009-02-05T17:57:02-08:00</authored-date>
  <message>Merge docrails along with the new guides and guides generation code</message>
  <tree>5154390d4f47971d522619db9f3826abb771b42f</tree>
  <committer>
    <name>Pratik Naik</name>
    <email>pratiknaik@gmail.com</email>
  </committer>
</commit>
