From 77015872be219be8e8121d69ea173cab3a9ce9a0 Mon Sep 17 00:00:00 2001 From: Yehuda Katz Date: Wed, 3 Feb 2010 16:28:18 -0800 Subject: Removing submodule hacks --- .gitmodules | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 .gitmodules diff --git a/.gitmodules b/.gitmodules deleted file mode 100644 index fd4fd34d3e..0000000000 --- a/.gitmodules +++ /dev/null @@ -1,3 +0,0 @@ -[submodule "arel"] - path = arel - url = git://github.com/rails/arel.git -- cgit v1.2.3 From f497e7ad1d52fb795784cf6f5b2bc456e46dbd27 Mon Sep 17 00:00:00 2001 From: Carl Lerche Date: Wed, 3 Feb 2010 16:56:32 -0800 Subject: Update rails to use the latest bundler --- rails.gemspec | 2 +- railties/lib/generators/rails/app/templates/config/boot.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rails.gemspec b/rails.gemspec index b44dc27cb0..acdb1d00fc 100644 --- a/rails.gemspec +++ b/rails.gemspec @@ -14,7 +14,7 @@ Gem::Specification.new do |s| s.add_dependency('activeresource', '= 3.0.pre') s.add_dependency('actionmailer', '= 3.0.pre') s.add_dependency('railties', '= 3.0.pre') - s.add_dependency('bundler', '>= 0.9.0.pre') + s.add_dependency('bundler', '>= 0.9.0.pre5') s.rdoc_options << '--exclude' << '.' s.has_rdoc = false diff --git a/railties/lib/generators/rails/app/templates/config/boot.rb b/railties/lib/generators/rails/app/templates/config/boot.rb index 70bd40bc4c..7407d6143a 100644 --- a/railties/lib/generators/rails/app/templates/config/boot.rb +++ b/railties/lib/generators/rails/app/templates/config/boot.rb @@ -1,6 +1,6 @@ # Use Bundler (preferred) begin - require File.expand_path('../../vendor/environment', __FILE__) + require File.expand_path('../../.bundle/environment', __FILE__) rescue LoadError require 'rubygems' require 'bundler' -- cgit v1.2.3 From 02ef8d20a19f9548800eaefc0ebdf18fbd9a67be Mon Sep 17 00:00:00 2001 From: Mikel Lindsaar Date: Thu, 4 Feb 2010 10:59:24 +1100 Subject: Adding guard to make sure test database declarations exist before trying to auto create --- activerecord/lib/active_record/railties/databases.rake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/activerecord/lib/active_record/railties/databases.rake b/activerecord/lib/active_record/railties/databases.rake index 4343bef3d4..ed7d2a045e 100644 --- a/activerecord/lib/active_record/railties/databases.rake +++ b/activerecord/lib/active_record/railties/databases.rake @@ -28,8 +28,8 @@ namespace :db do desc 'Create the database defined in config/database.yml for the current Rails.env - also makes test database if in development mode' task :create => :load_config do - # Make the test database at the same time as the development one - if Rails.env == 'development' + # Make the test database at the same time as the development one, if it exists + if Rails.env.development? && ActiveRecord::Base.configurations['test'] create_database(ActiveRecord::Base.configurations['test']) end create_database(ActiveRecord::Base.configurations[Rails.env]) -- cgit v1.2.3 From 1ae543a180095efef5ad59eb9883748ca20cebcf Mon Sep 17 00:00:00 2001 From: Mikel Lindsaar Date: Thu, 4 Feb 2010 11:08:46 +1100 Subject: -v and --version params now work on rails script in or our of an app --- railties/lib/rails/commands.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/railties/lib/rails/commands.rb b/railties/lib/rails/commands.rb index f0dcf61d98..4240038673 100644 --- a/railties/lib/rails/commands.rb +++ b/railties/lib/rails/commands.rb @@ -59,6 +59,9 @@ when 'runner' require 'rails/commands/runner' require ENV_PATH + +when '--version', '-v' + puts "Rails #{Rails::VERSION::STRING}" when '--help', '-h' puts HELP_TEXT when '--version', '-v' -- cgit v1.2.3 From 639e044298eed903566086d297ae51a535082e73 Mon Sep 17 00:00:00 2001 From: SubbaRao Pasupuleti Date: Sun, 31 Jan 2010 23:52:05 -0500 Subject: removing , from ,= statement in WrappedDatabaseException constructor [#3830 state:committed] Signed-off-by: Jeremy Kemper --- activerecord/lib/active_record/base.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index 12feef4849..c4e07e8786 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -79,7 +79,7 @@ module ActiveRecord #:nodoc: def initialize(message, original_exception) super(message) - @original_exception, = original_exception + @original_exception = original_exception end end -- cgit v1.2.3 From 36e6daac67b8ece9d05e425e331db8555046bb75 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Wed, 3 Feb 2010 17:22:08 -0800 Subject: Copy over latest release notes from docrails --- railties/guides/source/3_0_release_notes.textile | 148 +++++++++++++++++------ 1 file changed, 110 insertions(+), 38 deletions(-) diff --git a/railties/guides/source/3_0_release_notes.textile b/railties/guides/source/3_0_release_notes.textile index afc88af643..5e96f8cf06 100644 --- a/railties/guides/source/3_0_release_notes.textile +++ b/railties/guides/source/3_0_release_notes.textile @@ -1,34 +1,53 @@ -h2. Ruby on Rails 3.0 Release Notes +h2. Rails 3.0: Release Notes -Rails 3.0 is a landmark release as it delivers on the Merb/Rails merge promise made in December 2008. Rails 3.0 provides major upgrades to all of the components of Rails, including a complete overhaul of the router and query APIs. +Rails 3.0 is ponies and rainbows! It's going to cook you dinner and fold your laundry. You're going to wonder how life was ever possible before you it arrived. It's the Best Version of Rails We've Ever Done! -One of the main achievements of this release, is that while there are loads of new features, old APIs have been deprecated with warnings wherever possible, so that you can implement the new features and conventions at your own pace. There is a backwards compatibility layer that will be supported during 3.0.x and removed in 3.1. +But seriously now, it's really good stuff. There are all the good ideas brought over from when the Merb team joined the party and brought a focus on framework agnosticism, slimmer and faster internals, and a handful of tasty APIs. If you're coming to Rails 3.0 from Merb 1.x, you should recognize lots. If you're coming from Rails 2.x, you're going to love it too. -Rails 3.0 adds Active Model ORM abstraction, Abstract Controller generic controller abstraction as well as a consistent Plugin API giving developers full access to all the Rails internals that make Action Mailer, Action Controller, Action View, Active Record and Active Resource work. +Even if you don't give a hoot about any of our internal cleanups, Rails 3.0 is going to delight. We have a bunch of new features and improved APIs. It's never been a better time to be a Rails developer. Some of the highlights are: -These release notes cover the major upgrades, but don't include every little bug fix and change. If you want to see everything, check out the "list of commits":http://github.com/rails/rails/commits/master in the main Rails repository on GitHub. +* Brand new router with an emphasis on RESTful declarations +* New Action Mailer API modelled after Action Controller (now without the agonizing pain of sending multipart messages!) +* New Active Record chainable query language built on top of relational algebra +* Unobtrusive JavaScript helpers with drivers for Prototype, jQuery, and more coming (end of inline JS) +* Explicit dependency management with Bundler + +On top of all that, we've tried our best to deprecate the old APIs with nice warnings. That means that you can move your existing application to Rails 3 without immediately rewriting all your old code to the latest best practices. + +These release notes cover the major upgrades, but don't include every little bug fix and change. Rails 3.0 consists of almost 4,000 commits by more than 250 authors! If you want to see everything, check out the "list of commits":http://github.com/rails/rails/commits/master in the main Rails repository on GitHub. endprologue. -h3. Upgrading from Rails 2.3.5 to Rails 3.0 +WARNING: Rails 3.0 is currently in beta. This means that there are probably bugs and that you should "report them":http://rails.lighthouseapp.com/projects/8994-ruby-on-rails/overview if you see them. You also may not want to run the NORAD nuclear launch application off a beta version. But if you're starting development on a new application and you don't mind getting wind in your hair, please do jump on board! -As always, having a high coverage, passing test suite is your friend when upgrading. You should also first upgrade to Rails 2.3.5 and make sure your application still runs as expected before attempting to update to Rails 3.0. In general, the upgrade from Rails 2.x to 3.0 centers around three big changes: +h3. Upgrading to Rails 3 -h4. New Ruby Version Requirement +If you're upgrading an existing application, it's a great idea to have good test coverage before going in. You should also first upgrade to Rails 2.3.5 and make sure your application still runs as expected before attempting to update to Rails 3. Then take heed of the following changes: -WARNING: Rails only runs on version 1.8.7 of Ruby or later. Support for previous versions of Ruby has been dropped and Rails 3.0 will no longer boot on any of these versions. +h4. Rails 3 requires Ruby 1.8.7+ -h4. The new boot process +Rails 3.0 requires Ruby 1.8.7 or higher. Support for all of the previous Ruby versions has been dropped officially and you should upgrade as early as possible. Rails 3.0 is also compatible with Ruby 1.9.2. -As part of the shift to treating Rails apps as Rack endpoints, you are now required to have a +config/application.rb+ file, which takes over much of the work +config/environment.rb+ used to handle. Along with that comes a lot of internal change to the boot process, but those changes are mostly internal. +h4. Rails Application object -h4. Gems and gems and gems +As part of the groundwork for supporting running multiple Rails applications in the same process, Rails 3 introduces the concept of an Application object. An application object holds all the application specific configurations and is very similar in nature to +config/environment.rb+ from the previous versions of Rails. -The +config.gem+ method is gone and has been replaced by using +bundler+ and a +Gemfile+, see "Vendoring Gems":#vendoring-gems below. +Each Rails application now must have a corresponding application object. The application object is defined in +config/application.rb+. If you're upgrading an existing application to Rails 3, you must add this file and move the appropriate configurations from +config/environment.rb+ to +config/application.rb+. + +h4. script/* replaced by script/rails -h4. New APIs +The new script/rails replaces all the scripts that used to be in the script directory. You do not run script/rails directly though, the +rails+ command detects it is being invoked in the root of a Rails application and runs the script for you. Intended usage is: + + +rails console # => ./script/console +rails g scaffold post title:string # => ./script/generate scaffold post title:string + -Both the router and query interface have seen significant, breaking changes. There is a backwards compatibility layer that is in place and will be supported until the 3.1 release. +Run rails --help for a list of all the options. + +h4. Dependencies and config.gem + +The +config.gem+ method is gone and has been replaced by using +bundler+ and a +Gemfile+, see "Vendoring Gems":#vendoring-gems below. h4. Upgrade Process @@ -37,7 +56,7 @@ To help with the upgrade process, a plugin named "Rails Upgrade":http://github.c Simply install the plugin, then run +rake rails:upgrade:check+ to check your app for pieces that need to be updated (with links to information on how to update them). It also offers a task to generate a +Gemfile+ based on your current +config.gem+ calls and a task to generate a new routes file from your current one. To get the plugin, simply run the following: -script/plugin install git://github.com/rails/rails_upgrade.git +rails plugin install git://github.com/rails/rails_upgrade.git You can see an example of how that works at "Rails Upgrade is now an Official Plugin":http://omgbloglol.com/post/364624593/rails-upgrade-is-now-an-official-plugin @@ -46,30 +65,29 @@ Aside from Rails Upgrade tool, if you need more help, there are people on IRC an More information - "The Path to Rails 3: Approaching the upgrade":http://omgbloglol.com/post/353978923/the-path-to-rails-3-approaching-the-upgrade -h3. Application Creation -As stated above, you must be on Ruby 1.8.7 or later to boot up a Rails application. Rails will no longer boot on Ruby 1.8.6 or earlier. +h3. Creating a Rails 3.0 application -Rails 3.0 is designed to run on 1.8.7 and also support Ruby 1.9. - -There have been a few changes to the +rails+ script that's used to generate Rails applications: - -* The application name, rails my_app, can now optionally be a path instead rails ~/code/my_app, your rails application will be name spaced under the application name you pass the +rails+ command. -* Additionally, any flags you need to generate the application now need to come after the application path, for example: +The new installing rails sequence (for the beta) is: -$ rails myapp --database=mysql +$ gem install rails --prerelease +$ rails myapp +$ cd myapp h4. Vendoring Gems -Rails now uses a +Gemfile+ in the application root to determine the gems you require for your application to start. This +Gemfile+ is then read and acted on by the new "Bundler":http://github.com/wycats/bundler gem, which then vendors all your gems into the vendor directory, making your Rails application isolated from system gems. +Rails now uses a +Gemfile+ in the application root to determine the gems you require for your application to start. This +Gemfile+ is processed by the "Bundler":http://github.com/carlhuda/bundler, which then installs all your dependencies. It can even install all the dependencies locally to your application so that it doesn't depend on the system gems. More information: - "Using bundler":http://yehudakatz.com/2009/11/03/using-the-new-gem-bundler-today/ + h4. Living on the Edge -Due to the use of +Gemfile+, the concept of freezing Rails was dropped, because it's always bundled/frozen inside your application. By default, it uses your system gems when bundling; however, if you want to bundle straight from the Git repository, you can pass the edge flag: ++Bundler+ and +Gemfile+ makes freezing your Rails application easy as pie with the new dedicated bundle command, so rake freeze is no longer relevant and has been dropped. + +If you want to bundle straight from the Git repository, you can pass the edge flag: $ rails myapp --edge @@ -79,56 +97,76 @@ More information: * "Spinning up a new Rails app":http://yehudakatz.com/2009/12/31/spinning-up-a-new-rails-app/ * "Rails 3 and Passenger":http://cakebaker.42dh.com/2010/01/17/rails-3-and-passenger/ + h3. Rails Architectural Changes There are six major changes in the architecture of Rails. + h4. Railties Restrung Railties was updated to provide a consistent plugin API for the entire Rails framework as well as a total rewrite of generators and the Rails bindings, the result is that developers can now hook into any significant stage of the generators and application framework in a consistent, defined manner. + h4. All Rails core components are decoupled With the merge of Merb and Rails, one of the big jobs was to remove the tight coupling between Rails core components. This has now been achieved, and all Rails core components are now using the same API that you can use for developing plugins. This means any plugin you make, or any core component replacement (like DataMapper or Sequel) can access all the functionality that the Rails core components have access to and extend and enhance at will. More information: - "The Great Decoupling":http://yehudakatz.com/2009/07/19/rails-3-the-great-decoupling/ + h4. Active Model Abstraction Part of decoupling the core components was extracting all ties to Active Record from Action Pack. This has now been completed. All new ORM plugins now just need to implement Active Model interfaces to work seamlessly with Action Pack. More information: - "Make Any Ruby Object Feel Like ActiveRecord":http://yehudakatz.com/2010/01/10/activemodel-make-any-ruby-object-feel-like-activerecord/ + h4. Controller Abstraction Another big part of decoupling the core components was creating a base superclass that is separated from the notions of HTTP in order to handle rendering of views etc. This creation of +AbstractController+ allowed +ActionController+ and +ActionMailer+ to be greatly simplified with common code removed from all these libraries and put into Abstract Controller. More Information: - "Rails Edge Architecture":http://yehudakatz.com/2009/06/11/rails-edge-architecture/ + h4. Arel Integration -"Arel":http://github.com/brynary/arel (or Active Relation) has been taken on as the underpinnings of Active Record and is now required for Rails (it is installed for you when you do a gem bundle). Arel provides an SQL abstraction that simplifies out Active Record and provides the underpinnings for the relation functionality in Active Record. +"Arel":http://github.com/rails/arel (or Active Relation) has been taken on as the underpinnings of Active Record and is now required for Rails. Arel provides an SQL abstraction that simplifies out Active Record and provides the underpinnings for the relation functionality in Active Record. More information: - "Why I wrote Arel":http://magicscalingsprinkles.wordpress.com/2010/01/28/why-i-wrote-arel/. + h4. Mail Extraction Action Mailer ever since its beginnings has had monkey patches, pre parsers and even delivery and receiver agents, all in addition to having TMail vendored in the source tree. Version 3 changes that with all email message related functionality abstracted out to the "Mail":http://github.com/mikel/mail gem. This again reduces code duplication and helps create definable boundaries between Action Mailer and the email parser. More information: - "New Action Mailer API in Rails 3":http://lindsaar.net/2010/1/26/new-actionmailer-api-in-rails-3 + h3. Documentation The documentation in the Rails tree is being updated with all the API changes, additionally, the "Rails Edge guides":http://guides.rails.info/ are being updated one by one to reflect the changes in Rails 3.0. The guides at "guides.rubyonrails.org":http://guides.rubyonrails.org/ however will continue to contain only the stable version of Rails (at this point, version 2.3.5, until 3.0 is released). More Information: - "Rails Documentation Projects":http://weblog.rubyonrails.org/2009/1/15/rails-documentation-projects. + +h3. Internationalization + +A large amount of work has been done with I18n support in Rails 3, including the latest "I18n":http://github.com/svenfuchs/i18n gem supplying many speed improvements. + +* I18n for any object - I18n behavior can be added to any object by including ActiveModel::Translation and ActiveModel::Validations. There is also an errors.messages fallback for translations. +* Attributes can have default translations. +* Form Submit Tags automatically pull the correct status (Create or Update) depending on the object status, and so pull the correct translation. +* Labels with I18n also now work by just passing the attribute name. + +More Information: - "Rails 3 I18n changes":http://blog.plataformatec.com.br/2010/02/rails-3-i18n-changes/ + + h3. Railties With the decoupling of the main Rails frameworks, Railties got a huge overhaul so as to make linking up frameworks, engines or plugins as painless and extensible as possible: * Each application now has it's own name space, application is started with YourAppName.boot for example, makes interacting with other applications a lot easier. -* You now have access to Rails.config which provides huge amount of configuration settings for your application. * Anything under Rails.root/app is now added to the load path, so you can make app/observers/user_observer.rb and Rails will load it without any modifications. * Rails 3.0 now provides a Rails.config object, which provides a central repository of all sorts of Rails wide configuration options. @@ -138,7 +176,7 @@ Railties generators got a huge amount of attention in Rails 3.0, basically: * Generators were completely rewritten and are backwards incompatible. * Rails templates API and generators API were merged (they are the same as the former). -* Generators are no longer loaded from special paths anymore, they are just found in the Ruby load path, so calling script/generate foo will look for generators/foo_generator. +* Generators are no longer loaded from special paths anymore, they are just found in the Ruby load path, so calling rails generate foo will look for generators/foo_generator. * New generators provide hooks, so any template engine, ORM, test framework can easily hook in. * New generators allow you to override the templates by placing a copy at RAILS_ROOT/lib/templates. * Rails::Generators::TestCase is also supplied so you can create your own generators and test them. @@ -149,6 +187,11 @@ Also, the views generated by Railties generators had some overhaul: * Scaffolds generated now make use of _form partials, instead of duplicated code in the edit and new views. * Scaffold forms now use f.submit which returns "Create ModelName" or "Update ModelName" depending on the state of the object passed in. +Finally a couple of enhancements were added to the rake tasks: + +* rake db:forward was added, allowing you to roll forward your migrations individually or in groups. +* rake routes CONTROLLER=x was added allowing you to just view the routes for one controller. + Railties now deprecates: * RAILS_ROOT in favour of Rails.root, @@ -161,10 +204,12 @@ More information: * "Discovering Rails 3 generators":http://blog.plataformatec.com.br/2010/01/discovering-rails-3-generators * "Making Generators for Rails 3 with Thor":http://caffeinedd.com/guides/331-making-generators-for-rails-3-with-thor + h3. Action Pack There have been significant internal and external changes in Action Pack. + h4. Abstract Controller Abstract Controller pulls out the generic parts of Action Controller into a reusable module that any library can use to render templates, render partials, helpers, translations, logging, any part of the request response cycle. This abstraction allowed ActionMailer::Base to now just inherit from +AbstractController+ and just wrap the Rails DSL onto the Mail gem. @@ -175,6 +220,7 @@ Note however that Abstract Controller is not a user facing API, you will not run More Information: - "Rails Edge Architecture":http://yehudakatz.com/2009/06/11/rails-edge-architecture/ + h4. Action Controller * application_controller.rb now has protect_from_forgery on by default. @@ -194,6 +240,7 @@ More Information: * "Render Options in Rails 3":http://www.engineyard.com/blog/2010/render-options-in-rails-3/ * "Three reasons to love ActionController::Responder":http://weblog.rubyonrails.org/2009/8/31/three-reasons-love-responder + h4. Action Dispatch Action Dispatch is new in Rails 3.0 and provides a new, cleaner implementation for routing. @@ -220,9 +267,9 @@ end * Added +scope+ method to the router, allowing you to namespace routes for different languages or different actions, for example: -scope 'es' { resources :projects, - :path_names => { :edit => 'cambiar' }, - :as => 'projeto' } +scope 'es' do + resources :projects, :path_names => { :edit => 'cambiar' }, :as => 'projeto' +end # Gives you the edit action with /es/projeto/1/cambiar @@ -243,6 +290,7 @@ More Information: * "Revamped Routes in Rails 3":http://rizwanreza.com/2009/12/20/revamped-routes-in-rails-3 * "Generic Actions in Rails 3":http://yehudakatz.com/2009/12/20/generic-actions-in-rails-3/ + h4. Action View Major re-write was done in the Action View helpers, implementing Unobtrusive JavaScript (UJS) hooks and removing the old inline AJAX commands. This enables Rails to use any compliant UJS driver to implement the UJS hooks in the helpers. @@ -264,17 +312,23 @@ Produces: * Form label helper now pulls values from I18n with a single value, so f.label :name will pull the :name translation. * I18n select label on should now be :en.helpers.select instead of :en.support.select. * You no longer need to place a minus sign at the end of a ruby interpolation inside an ERb template to remove the trailing carriage return in the HTML output. +* Added +grouped_collection_select+ helper to Action View. +* Action View now will raise exceptions if CSS stylesheets and javascript files listed in the +javascript_include_tag+ and +stylesheet_include_tag+ helpers are missing. +* +content_for?+ has been added allowing you to check for the existence of content in a view before rendering. + h3. Active Model Active Model is new in Rails 3.0. It provides an abstraction layer for any ORM libraries to use to interact with Rails by implementing an Active Model interface. + h4. ORM Abstraction and Action Pack Interface Part of decoupling the core components was extracting all ties to Active Record from Action Pack. This has now been completed. All new ORM plugins now just need to implement Active Model interfaces to work seamlessly with Action Pack. More Information: - "Make Any Ruby Object Feel Like ActiveRecord":http://yehudakatz.com/2010/01/10/activemodel-make-any-ruby-object-feel-like-activerecord/ + h4. Validations Validations have been moved from Active Record into Active Model, providing an interface to validations that works across ORM libraries in Rails 3. @@ -324,8 +378,12 @@ More Information: * "Sexy Validation in Rails 3":http://thelucid.com/2010/01/08/sexy-validation-in-edge-rails-rails-3/ * "Rails 3 Validations Explained":http://lindsaar.net/2010/1/31/validates_rails_3_awesome_is_true + h3. Active Record +Active Record received a lot of attention in Rails 3.0, including abstraction into Active Model, a full update to the Query interface using Arel, validation updates and many enhancements and fixes. All of the Rails 2.x API will be usable through a compatibility layer that will be supported until version 3.1. + + h4. Query Interface Active Record, through the use of Arel, now returns relations on it's core methods. The existing API in Rails 2.3.x is still supported and will not be deprecated until Rails 3.1 and not removed until Rails 3.2, however, the new API provides the following new methods that all return relations allowing them to be chained together: @@ -350,6 +408,13 @@ More Information: * "Active Record Query Interface":http://m.onkey.org/2010/1/22/active-record-query-interface * "Let your SQL Growl in Rails 3":http://hasmanyquestions.wordpress.com/2010/01/17/let-your-sql-growl-in-rails-3/ + +h4. Enhancements + +* Added :destroyed? to Active Record objects. +* Added :inverse_of to Active Record associations allowing you to pull the instance of an already loaded association without hitting the database. + + h4. Patches and Deprecations Additionally, many fixes in the Active Record branch: @@ -357,19 +422,24 @@ Additionally, many fixes in the Active Record branch: * SQLite 2 support has been dropped in favour of SQLite 3. * MySQL support for column order. * PostgreSQL adapter has had it's +TIME ZONE+ support fixed so it no longer inserts incorrect values. +* Support multiple schemas in table names for PostgreSQL. * PostgreSQL support for the XML data type column. * +table_name+ is now cached. +* A large amount of work done on the Oracle adapter as well with many bug fixes. As well as the following deprecations: * +named_scope+ in an Active Record class is deprecated and has been renamed to just +scope+. * In +scope+ methods, you should move to using the relation methods, instead of a :conditions => {} finder method, for example scope :since, lambda {|time| where("created_at > ?", time) }. * save(false) is deprecated, in favour of save(:validate => false). -* I18n error messages for ActiveRecord should be changed from :en.activerecord.errors to :en.errors. +* I18n error messages for ActiveRecord should be changed from :en.activerecord.errors.template to :en.errors.template. * model.errors.on is deprecated in favour of model.errors[] * validates_presence_of => validates... :presence => true * ActiveRecord::Base.colorize_logging and config.active_record.colorize_logging are deprecated in favour of Rails::Subscriber.colorize_logging or config.colorize_logging +NOTE: While an implementation of State Machine has been in Active Record edge for some months now, it has been removed from the Rails 3.0 release. + + h3. Active Resource Active Resource was also extracted out to Active Model allowing you to use Active Resource objects with Action Pack seamlessly. @@ -400,6 +470,7 @@ Deprecations: * save(false) is deprecated, in favour of save(:validate => false). * Ruby 1.9.2: URI.parse and .decode are deprecated and are no longer used in the library. + h3. Active Support A large effort was made in Active Support to make it cherry pickable, that is, you no longer have to require the entire Active Support library to get pieces of it. This allows the various core components of Rails to run slimmer. @@ -438,7 +509,7 @@ The following methods have been removed because they are now available in Ruby 1 * Integer#even? and Integer#odd? * String#each_char -* String#start_with? and String#end_with? (plural aliases still kept) +* String#start_with? and String#end_with? (3rd person aliases still kept) * String#bytesize * Object#tap * Symbol#to_proc @@ -449,8 +520,8 @@ The security patch for REXML remains in Active Support because early patchlevels The following methods have been removed because they are no longer used in the framework: -* Class#subclasses, Class#reachable?, Class#remove_class * Object#remove_subclasses_of, Object#subclasses_of, Object#extend_with_included_modules_from, Object#extended_by +* Class#subclasses, Class#reachable?, Class#remove_class * Regexp#number_of_captures * Regexp.unoptionalize, Regexp.optionalize, Regexp#number_of_captures @@ -481,8 +552,9 @@ More Information: * "New Action Mailer API in Rails 3":http://lindsaar.net/2010/1/26/new-actionmailer-api-in-rails-3 * "New Mail Gem for Ruby":http://lindsaar.net/2010/1/23/mail-gem-version-2-released + h3. Credits -See the "full list of contributors to Rails":http://contributors.rubyonrails.org/, many people have spent many hours making Rails 3 what it is. Kudos to all of them. +See the "full list of contributors to Rails":http://contributors.rubyonrails.org/ for the many people who spent many hours making Rails 3. Kudos to all of them. -Rails 3.0 Release Notes were compiled by "Mikel Lindsaar":http://lindsaar.net, who can be found "feeding":http://feeds.feedburner.com/lindsaar-net and "tweeting":http://twitter.com/raasdnil. \ No newline at end of file +Rails 3.0 Release Notes were compiled by "Mikel Lindsaar":http://lindsaar.net. \ No newline at end of file -- cgit v1.2.3 From ddb512c02b81406d10a932a19a365275d3f54849 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Wed, 3 Feb 2010 17:27:06 -0800 Subject: Simplify description --- railties/railties.gemspec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/railties/railties.gemspec b/railties/railties.gemspec index 1e6b141a09..c01636f1c1 100644 --- a/railties/railties.gemspec +++ b/railties/railties.gemspec @@ -4,8 +4,7 @@ Gem::Specification.new do |s| s.version = '3.0.pre' s.summary = "Controls boot-up, rake tasks and generators for the Rails framework." s.description = <<-EOF - Rails is a framework for building web-application using CGI, FCGI, mod_ruby, or WEBrick - on top of either MySQL, PostgreSQL, SQLite, DB2, SQL Server, or Oracle with eRuby- or Builder-based templates. + Rails is a full-stack, web-application framework. EOF s.add_dependency('rake', '>= 0.8.3') -- cgit v1.2.3 From 79817aa9e7fa7c207868ca56ca8bbd0ee5303d81 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Wed, 3 Feb 2010 17:29:51 -0800 Subject: Move to 3.0.0.beta --- Gemfile | 2 +- Rakefile | 1 - actionmailer/actionmailer.gemspec | 4 ++-- actionmailer/lib/action_mailer/version.rb | 2 +- actionpack/actionpack.gemspec | 6 +++--- actionpack/lib/action_pack/version.rb | 2 +- activemodel/activemodel.gemspec | 4 ++-- activemodel/lib/active_model/version.rb | 2 +- activerecord/activerecord.gemspec | 6 +++--- activerecord/lib/active_record/version.rb | 2 +- activeresource/activeresource.gemspec | 6 +++--- activeresource/lib/active_resource/version.rb | 2 +- activesupport/activesupport.gemspec | 2 +- activesupport/lib/active_support/version.rb | 2 +- rails.gemspec | 14 +++++++------- railties/lib/rails/tasks/documentation.rake | 2 +- railties/lib/rails/version.rb | 2 +- railties/railties.gemspec | 6 +++--- 18 files changed, 33 insertions(+), 34 deletions(-) diff --git a/Gemfile b/Gemfile index 051607c0f1..6c2f8a35fe 100644 --- a/Gemfile +++ b/Gemfile @@ -1,7 +1,7 @@ path File.expand_path('..', __FILE__) source :gemcutter -gem "rails", "3.0.pre" +gem "rails", "3.0.0.beta" gem "rake", ">= 0.8.7" gem "mocha", ">= 0.9.8" diff --git a/Rakefile b/Rakefile index a102b38cb7..193e719079 100644 --- a/Rakefile +++ b/Rakefile @@ -38,7 +38,6 @@ Rake::GemPackageTask.new(spec) do |pkg| end task :install => :gem do - system %(cd rack && rake gem VERSION=1.0.2.pre && gem install rack-1.0.2.pre.gem --no-ri --no-rdoc --ignore-dependencies) (PROJECTS - ["railties"]).each do |project| puts "INSTALLING #{project}" system("gem install #{project}/pkg/#{project}-#{ActionPack::VERSION::STRING}.gem --no-ri --no-rdoc") diff --git a/actionmailer/actionmailer.gemspec b/actionmailer/actionmailer.gemspec index abbb542293..1e4a19f736 100644 --- a/actionmailer/actionmailer.gemspec +++ b/actionmailer/actionmailer.gemspec @@ -3,14 +3,14 @@ Gem::Specification.new do |s| s.name = 'actionmailer' s.summary = "Service layer for easy email delivery and testing." s.description = %q{Makes it trivial to test and deliver emails sent from a single service layer.} - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.author = "David Heinemeier Hansson" s.email = "david@loudthinking.com" s.rubyforge_project = "actionmailer" s.homepage = "http://www.rubyonrails.org" - s.add_dependency('actionpack', '= 3.0.pre') + s.add_dependency('actionpack', '= 3.0.0.beta') s.add_dependency('mail', '~> 2.1.2') s.add_dependency('text-format', '~> 1.0.0') diff --git a/actionmailer/lib/action_mailer/version.rb b/actionmailer/lib/action_mailer/version.rb index 0f2b58552b..b11c6ef055 100644 --- a/actionmailer/lib/action_mailer/version.rb +++ b/actionmailer/lib/action_mailer/version.rb @@ -2,7 +2,7 @@ module ActionMailer module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/actionpack/actionpack.gemspec b/actionpack/actionpack.gemspec index dc91fba64d..ee1c35f0ae 100644 --- a/actionpack/actionpack.gemspec +++ b/actionpack/actionpack.gemspec @@ -1,7 +1,7 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'actionpack' - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.summary = "Web-flow and rendering framework putting the VC in MVC." s.description = %q{Eases web-request routing, handling, and response as a half-way front, half-way page controller. Implemented with specific emphasis on enabling easy unit/integration testing that doesn't require a browser.} #' @@ -14,8 +14,8 @@ Gem::Specification.new do |s| s.has_rdoc = true s.requirements << 'none' - s.add_dependency('activesupport', '= 3.0.pre') - s.add_dependency('activemodel', '= 3.0.pre') + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('activemodel', '= 3.0.0.beta') s.add_dependency('rack', '~> 1.1.0') s.add_dependency('rack-test', '~> 0.5.0') s.add_dependency('rack-mount', '~> 0.4.0') diff --git a/actionpack/lib/action_pack/version.rb b/actionpack/lib/action_pack/version.rb index ed0cdf38ee..4dde21dd40 100644 --- a/actionpack/lib/action_pack/version.rb +++ b/actionpack/lib/action_pack/version.rb @@ -2,7 +2,7 @@ module ActionPack #:nodoc: module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/activemodel/activemodel.gemspec b/activemodel/activemodel.gemspec index c3ff624419..64ae6e0760 100644 --- a/activemodel/activemodel.gemspec +++ b/activemodel/activemodel.gemspec @@ -1,7 +1,7 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'activemodel' - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.summary = "A toolkit for building other modeling frameworks like ActiveRecord" s.description = %q{Extracts common modeling concerns from ActiveRecord to share between similar frameworks like ActiveResource.} @@ -12,7 +12,7 @@ Gem::Specification.new do |s| s.has_rdoc = true - s.add_dependency('activesupport', '= 3.0.pre') + s.add_dependency('activesupport', '= 3.0.0.beta') s.require_path = 'lib' s.files = Dir["CHANGELOG", "MIT-LICENSE", "README", "lib/**/*"] diff --git a/activemodel/lib/active_model/version.rb b/activemodel/lib/active_model/version.rb index 0c233b7b4f..f569447bc8 100644 --- a/activemodel/lib/active_model/version.rb +++ b/activemodel/lib/active_model/version.rb @@ -2,7 +2,7 @@ module ActiveModel module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/activerecord/activerecord.gemspec b/activerecord/activerecord.gemspec index 4fd1a0213c..a8c990e3cb 100644 --- a/activerecord/activerecord.gemspec +++ b/activerecord/activerecord.gemspec @@ -1,14 +1,14 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'activerecord' - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.summary = "Implements the ActiveRecord pattern for ORM." s.description = %q{Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM. It ties database tables and classes together for business objects, like Customer or Subscription, that can find, save, and destroy themselves without resorting to manual SQL.} s.files = Dir['CHANGELOG', 'README', 'examples/**/*', 'lib/**/*'] - s.add_dependency('activesupport', '= 3.0.pre') - s.add_dependency('activemodel', '= 3.0.pre') + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('activemodel', '= 3.0.0.beta') s.add_dependency('arel', '~> 0.2.0') s.require_path = 'lib' diff --git a/activerecord/lib/active_record/version.rb b/activerecord/lib/active_record/version.rb index 10ef9d7594..d55b14f082 100644 --- a/activerecord/lib/active_record/version.rb +++ b/activerecord/lib/active_record/version.rb @@ -2,7 +2,7 @@ module ActiveRecord module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/activeresource/activeresource.gemspec b/activeresource/activeresource.gemspec index ad2031c9e7..b7555228cd 100644 --- a/activeresource/activeresource.gemspec +++ b/activeresource/activeresource.gemspec @@ -1,14 +1,14 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'activeresource' - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.summary = "Think Active Record for web resources." s.description = %q{Wraps web resources in model classes that can be manipulated through XML over REST.} s.files = Dir['CHANGELOG', 'README', 'examples/**/*', 'lib/**/*'] - s.add_dependency('activesupport', '= 3.0.pre') - s.add_dependency('activemodel', '= 3.0.pre') + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('activemodel', '= 3.0.0.beta') s.require_path = 'lib' s.autorequire = 'active_resource' diff --git a/activeresource/lib/active_resource/version.rb b/activeresource/lib/active_resource/version.rb index 0f312eac39..952a0d3b5f 100644 --- a/activeresource/lib/active_resource/version.rb +++ b/activeresource/lib/active_resource/version.rb @@ -2,7 +2,7 @@ module ActiveResource module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/activesupport/activesupport.gemspec b/activesupport/activesupport.gemspec index 19cdbaa41a..9e0b48278c 100644 --- a/activesupport/activesupport.gemspec +++ b/activesupport/activesupport.gemspec @@ -1,7 +1,7 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = "activesupport" - s.version = "3.0.pre" + s.version = "3.0.0.beta" s.date = "2009-09-01" s.summary = "Support and utility classes used by the Rails framework." s.description = %q{Utility library which carries commonly used classes and goodies from the Rails framework} diff --git a/activesupport/lib/active_support/version.rb b/activesupport/lib/active_support/version.rb index 3ae6150f2d..b92e469a08 100644 --- a/activesupport/lib/active_support/version.rb +++ b/activesupport/lib/active_support/version.rb @@ -2,7 +2,7 @@ module ActiveSupport module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/rails.gemspec b/rails.gemspec index b44dc27cb0..89681cb0aa 100644 --- a/rails.gemspec +++ b/rails.gemspec @@ -1,19 +1,19 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'rails' - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.summary = "Web-application framework with template engine, control-flow layer, and ORM." s.description = <<-EOF Rails is a framework for building web-application using CGI, FCGI, mod_ruby, or WEBrick on top of either MySQL, PostgreSQL, SQLite, DB2, SQL Server, or Oracle with eRuby- or Builder-based templates. EOF - s.add_dependency('activesupport', '= 3.0.pre') - s.add_dependency('actionpack', '= 3.0.pre') - s.add_dependency('activerecord', '= 3.0.pre') - s.add_dependency('activeresource', '= 3.0.pre') - s.add_dependency('actionmailer', '= 3.0.pre') - s.add_dependency('railties', '= 3.0.pre') + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('actionpack', '= 3.0.0.beta') + s.add_dependency('activerecord', '= 3.0.0.beta') + s.add_dependency('activeresource', '= 3.0.0.beta') + s.add_dependency('actionmailer', '= 3.0.0.beta') + s.add_dependency('railties', '= 3.0.0.beta') s.add_dependency('bundler', '>= 0.9.0.pre') s.rdoc_options << '--exclude' << '.' diff --git a/railties/lib/rails/tasks/documentation.rake b/railties/lib/rails/tasks/documentation.rake index 3f49a9a720..7095046f21 100644 --- a/railties/lib/rails/tasks/documentation.rake +++ b/railties/lib/rails/tasks/documentation.rake @@ -14,7 +14,7 @@ namespace :doc do desc 'Generate documentation for the Rails framework. Specify path with PATH="/path/to/rails"' Rake::RDocTask.new("rails") { |rdoc| path = ENV['RAILS_PATH'] || 'vendor/gems/gems' - version = '-3.0.pre' unless ENV['RAILS_PATH'] + version = '-3.0.0.beta' unless ENV['RAILS_PATH'] rdoc.rdoc_dir = 'doc/api' rdoc.template = "#{ENV['template']}.rb" if ENV['template'] rdoc.title = "Rails Framework Documentation" diff --git a/railties/lib/rails/version.rb b/railties/lib/rails/version.rb index 9a65096061..c327d4545a 100644 --- a/railties/lib/rails/version.rb +++ b/railties/lib/rails/version.rb @@ -2,7 +2,7 @@ module Rails module VERSION #:nodoc: MAJOR = 3 MINOR = 0 - TINY = "pre" + TINY = "0.beta" STRING = [MAJOR, MINOR, TINY].join('.') end diff --git a/railties/railties.gemspec b/railties/railties.gemspec index c01636f1c1..62cfc1bbed 100644 --- a/railties/railties.gemspec +++ b/railties/railties.gemspec @@ -1,7 +1,7 @@ Gem::Specification.new do |s| s.platform = Gem::Platform::RUBY s.name = 'railties' - s.version = '3.0.pre' + s.version = '3.0.0.beta' s.summary = "Controls boot-up, rake tasks and generators for the Rails framework." s.description = <<-EOF Rails is a full-stack, web-application framework. @@ -9,8 +9,8 @@ Gem::Specification.new do |s| s.add_dependency('rake', '>= 0.8.3') s.add_dependency('thor', '~> 0.13') - s.add_dependency('activesupport', '= 3.0.pre') - s.add_dependency('actionpack', '= 3.0.pre') + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('actionpack', '= 3.0.0.beta') s.rdoc_options << '--exclude' << '.' s.has_rdoc = false -- cgit v1.2.3 From e71825d40d4427ad1bf8b819adea5987fbf59fc5 Mon Sep 17 00:00:00 2001 From: Chad Woolley Date: Wed, 3 Feb 2010 18:54:46 -0700 Subject: remove arel directory, breaks 'git submodule init', which breaks ci builds Signed-off-by: Yehuda Katz --- arel | 1 - 1 file changed, 1 deletion(-) delete mode 160000 arel diff --git a/arel b/arel deleted file mode 160000 index 0faeb50474..0000000000 --- a/arel +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 0faeb5047407348533db952d9cf93ea59d2526dc -- cgit v1.2.3 From 031139bb717d37f29bc3daf3a6d40ab2a9d7d3fc Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Wed, 3 Feb 2010 17:59:39 -0800 Subject: Homogenize gemspecs and remove the deprecated autorequire --- actionmailer/actionmailer.gemspec | 32 ++++++++++++++-------------- actionpack/actionpack.gemspec | 27 ++++++++++++----------- activerecord/activerecord.gemspec | 30 ++++++++++++-------------- activeresource/activeresource.gemspec | 28 ++++++++++++------------ activesupport/activesupport.gemspec | 30 +++++++++++++------------- rails.gemspec | 29 ++++++++++++------------- railties/railties.gemspec | 40 +++++++++++++++++------------------ 7 files changed, 103 insertions(+), 113 deletions(-) diff --git a/actionmailer/actionmailer.gemspec b/actionmailer/actionmailer.gemspec index 1e4a19f736..c3b1c96832 100644 --- a/actionmailer/actionmailer.gemspec +++ b/actionmailer/actionmailer.gemspec @@ -1,22 +1,22 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = 'actionmailer' - s.summary = "Service layer for easy email delivery and testing." - s.description = %q{Makes it trivial to test and deliver emails sent from a single service layer.} - s.version = '3.0.0.beta' + s.platform = Gem::Platform::RUBY + s.name = 'actionmailer' + s.version = '3.0.0.beta' + s.summary = 'Email composition, delivery, and recieval framework (part of Rails).' + s.description = 'Email composition, delivery, and recieval framework (part of Rails).' - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.rubyforge_project = "actionmailer" - s.homepage = "http://www.rubyonrails.org" + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'actionmailer' - s.add_dependency('actionpack', '= 3.0.0.beta') - s.add_dependency('mail', '~> 2.1.2') - s.add_dependency('text-format', '~> 1.0.0') + s.files = Dir['CHANGELOG', 'README', 'MIT-LICENSE', 'lib/**/*'] + s.require_path = 'lib' + s.requirements << 'none' - s.files = Dir['CHANGELOG', 'README', 'MIT-LICENSE', 'lib/**/*'] s.has_rdoc = true - s.requirements << 'none' - s.require_path = 'lib' - s.autorequire = 'action_mailer' + + s.add_dependency('actionpack', '= 3.0.0.beta') + s.add_dependency('mail', '~> 2.1.2') + s.add_dependency('text-format', '~> 1.0.0') end diff --git a/actionpack/actionpack.gemspec b/actionpack/actionpack.gemspec index ee1c35f0ae..2017776661 100644 --- a/actionpack/actionpack.gemspec +++ b/actionpack/actionpack.gemspec @@ -1,26 +1,25 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = 'actionpack' - s.version = '3.0.0.beta' - s.summary = "Web-flow and rendering framework putting the VC in MVC." - s.description = %q{Eases web-request routing, handling, and response as a half-way front, half-way page controller. Implemented with specific emphasis on enabling easy unit/integration testing that doesn't require a browser.} #' + s.platform = Gem::Platform::RUBY + s.name = 'actionpack' + s.version = '3.0.0.beta' + s.summary = 'Web-flow and rendering framework putting the VC in MVC (part of Rails).' + s.description = 'Web-flow and rendering framework putting the VC in MVC (part of Rails).' - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.rubyforge_project = "actionpack" - s.homepage = "http://www.rubyonrails.org" + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'actionpack' - s.files = Dir['CHANGELOG', 'README', 'MIT-LICENSE', 'lib/**/*'] - s.has_rdoc = true + s.files = Dir['CHANGELOG', 'README', 'MIT-LICENSE', 'lib/**/*'] + s.require_path = 'lib' s.requirements << 'none' + s.has_rdoc = true + s.add_dependency('activesupport', '= 3.0.0.beta') s.add_dependency('activemodel', '= 3.0.0.beta') s.add_dependency('rack', '~> 1.1.0') s.add_dependency('rack-test', '~> 0.5.0') s.add_dependency('rack-mount', '~> 0.4.0') s.add_dependency('erubis', '~> 2.6.5') - - s.require_path = 'lib' - s.autorequire = 'action_controller' end diff --git a/activerecord/activerecord.gemspec b/activerecord/activerecord.gemspec index a8c990e3cb..f7ed77ca4b 100644 --- a/activerecord/activerecord.gemspec +++ b/activerecord/activerecord.gemspec @@ -1,25 +1,23 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = 'activerecord' - s.version = '3.0.0.beta' - s.summary = "Implements the ActiveRecord pattern for ORM." - s.description = %q{Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM. It ties database tables and classes together for business objects, like Customer or Subscription, that can find, save, and destroy themselves without resorting to manual SQL.} + s.platform = Gem::Platform::RUBY + s.name = 'activerecord' + s.version = '3.0.0.beta' + s.summary = 'Object-relational mapper framework (part of Rails).' + s.description = 'Object-relational mapper framework (part of Rails).' - s.files = Dir['CHANGELOG', 'README', 'examples/**/*', 'lib/**/*'] - - s.add_dependency('activesupport', '= 3.0.0.beta') - s.add_dependency('activemodel', '= 3.0.0.beta') - s.add_dependency('arel', '~> 0.2.0') + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'activerecord' + s.files = Dir['CHANGELOG', 'README', 'examples/**/*', 'lib/**/*'] s.require_path = 'lib' - s.autorequire = 'active_record' - s.has_rdoc = true + s.has_rdoc = true s.extra_rdoc_files = %w( README ) s.rdoc_options.concat ['--main', 'README'] - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.homepage = "http://www.rubyonrails.org" - s.rubyforge_project = "activerecord" + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('activemodel', '= 3.0.0.beta') + s.add_dependency('arel', '~> 0.2.0') end diff --git a/activeresource/activeresource.gemspec b/activeresource/activeresource.gemspec index b7555228cd..8668761977 100644 --- a/activeresource/activeresource.gemspec +++ b/activeresource/activeresource.gemspec @@ -1,24 +1,22 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = 'activeresource' - s.version = '3.0.0.beta' - s.summary = "Think Active Record for web resources." - s.description = %q{Wraps web resources in model classes that can be manipulated through XML over REST.} + s.platform = Gem::Platform::RUBY + s.name = 'activeresource' + s.version = '3.0.0.beta' + s.summary = 'REST-model framework (part of Rails).' + s.description = 'REST-model framework (part of Rails).' - s.files = Dir['CHANGELOG', 'README', 'examples/**/*', 'lib/**/*'] - - s.add_dependency('activesupport', '= 3.0.0.beta') - s.add_dependency('activemodel', '= 3.0.0.beta') + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'activeresource' + s.files = Dir['CHANGELOG', 'README', 'examples/**/*', 'lib/**/*'] s.require_path = 'lib' - s.autorequire = 'active_resource' - s.has_rdoc = true + s.has_rdoc = true s.extra_rdoc_files = %w( README ) s.rdoc_options.concat ['--main', 'README'] - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.homepage = "http://www.rubyonrails.org" - s.rubyforge_project = "activeresource" + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('activemodel', '= 3.0.0.beta') end diff --git a/activesupport/activesupport.gemspec b/activesupport/activesupport.gemspec index 9e0b48278c..c366ccfa8e 100644 --- a/activesupport/activesupport.gemspec +++ b/activesupport/activesupport.gemspec @@ -1,22 +1,22 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = "activesupport" - s.version = "3.0.0.beta" - s.date = "2009-09-01" - s.summary = "Support and utility classes used by the Rails framework." - s.description = %q{Utility library which carries commonly used classes and goodies from the Rails framework} + s.platform = Gem::Platform::RUBY + s.name = 'activesupport' + s.version = '3.0.0.beta' + s.summary = 'Support and utility classes used by the Rails framework.' + s.description = 'Support and utility classes used by the Rails framework.' - s.add_dependency('i18n', '~> 0.3.0') - s.add_dependency('tzinfo', '~> 0.3.16') - s.add_dependency('builder', '~> 2.1.2') - s.add_dependency('memcache-client', '~> 1.7.5') + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'activesupport' - s.files = Dir['CHANGELOG', 'README', 'lib/**/*'] + s.files = Dir['CHANGELOG', 'README', 'lib/**/*'] s.require_path = 'lib' + s.has_rdoc = true - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.homepage = "http://www.rubyonrails.org" - s.rubyforge_project = "activesupport" + s.add_dependency('i18n', '~> 0.3.0') + s.add_dependency('tzinfo', '~> 0.3.16') + s.add_dependency('builder', '~> 2.1.2') + s.add_dependency('memcache-client', '~> 1.7.5') end diff --git a/rails.gemspec b/rails.gemspec index 80443c6f6f..37a9636ad7 100644 --- a/rails.gemspec +++ b/rails.gemspec @@ -1,12 +1,17 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = 'rails' - s.version = '3.0.0.beta' - s.summary = "Web-application framework with template engine, control-flow layer, and ORM." - s.description = <<-EOF - Rails is a framework for building web-application using CGI, FCGI, mod_ruby, or WEBrick - on top of either MySQL, PostgreSQL, SQLite, DB2, SQL Server, or Oracle with eRuby- or Builder-based templates. - EOF + s.platform = Gem::Platform::RUBY + s.name = 'rails' + s.version = '3.0.0.beta' + s.summary = 'Full-stack web-application framework.' + s.description = 'Full-stack web-application framework.' + + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'rails' + + s.rdoc_options << '--exclude' << '.' + s.has_rdoc = false s.add_dependency('activesupport', '= 3.0.0.beta') s.add_dependency('actionpack', '= 3.0.0.beta') @@ -15,12 +20,4 @@ Gem::Specification.new do |s| s.add_dependency('actionmailer', '= 3.0.0.beta') s.add_dependency('railties', '= 3.0.0.beta') s.add_dependency('bundler', '>= 0.9.0.pre5') - - s.rdoc_options << '--exclude' << '.' - s.has_rdoc = false - - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.homepage = "http://www.rubyonrails.org" - s.rubyforge_project = "rails" end diff --git a/railties/railties.gemspec b/railties/railties.gemspec index 62cfc1bbed..e91bd0e1b5 100644 --- a/railties/railties.gemspec +++ b/railties/railties.gemspec @@ -1,28 +1,26 @@ Gem::Specification.new do |s| - s.platform = Gem::Platform::RUBY - s.name = 'railties' - s.version = '3.0.0.beta' - s.summary = "Controls boot-up, rake tasks and generators for the Rails framework." - s.description = <<-EOF - Rails is a full-stack, web-application framework. - EOF + s.platform = Gem::Platform::RUBY + s.name = 'railties' + s.version = '3.0.0.beta' + s.summary = 'Controls boot-up, rake tasks and generators for the Rails framework.' + s.description = 'Controls boot-up, rake tasks and generators for the Rails framework.' - s.add_dependency('rake', '>= 0.8.3') - s.add_dependency('thor', '~> 0.13') - s.add_dependency('activesupport', '= 3.0.0.beta') - s.add_dependency('actionpack', '= 3.0.0.beta') + s.author = 'David Heinemeier Hansson' + s.email = 'david@loudthinking.com' + s.homepage = 'http://www.rubyonrails.org' + s.rubyforge_project = 'rails' + + s.files = Dir['CHANGELOG', 'README', 'bin/**/*', 'builtin/**/*', 'guides/**/*', 'lib/**/{*,.[a-z]*}'] + s.require_path = 'lib' + s.bindir = 'bin' + s.executables = ['rails'] + s.default_executable = 'rails' s.rdoc_options << '--exclude' << '.' s.has_rdoc = false - s.files = Dir['CHANGELOG', 'README', 'bin/**/*', 'builtin/**/*', 'guides/**/*', 'lib/**/{*,.[a-z]*}'] - s.require_path = 'lib' - s.bindir = "bin" - s.executables = ["rails"] - s.default_executable = "rails" - - s.author = "David Heinemeier Hansson" - s.email = "david@loudthinking.com" - s.homepage = "http://www.rubyonrails.org" - s.rubyforge_project = "rails" + s.add_dependency('rake', '>= 0.8.3') + s.add_dependency('thor', '~> 0.13') + s.add_dependency('activesupport', '= 3.0.0.beta') + s.add_dependency('actionpack', '= 3.0.0.beta') end -- cgit v1.2.3 From db15e49ddf64afd982ddb52e7d0487314f7dcf97 Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Wed, 3 Feb 2010 22:08:48 -0800 Subject: Autorequire bundled libraries by default --- railties/lib/generators/rails/app/templates/config/boot.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/railties/lib/generators/rails/app/templates/config/boot.rb b/railties/lib/generators/rails/app/templates/config/boot.rb index 7407d6143a..03396113e8 100644 --- a/railties/lib/generators/rails/app/templates/config/boot.rb +++ b/railties/lib/generators/rails/app/templates/config/boot.rb @@ -16,6 +16,9 @@ rescue LoadError # require 'rubygems' end +# Auto-require all bundled libraries. +Bundler.require + <% unless options[:skip_activerecord] -%> require 'rails/all' @@ -40,4 +43,4 @@ require "action_view/railtie" require "action_mailer/railtie" require "active_resource/railtie" require "rails/test_unit/railtie" -<% end -%> \ No newline at end of file +<% end -%> -- cgit v1.2.3 From b63643004c1b44cfd3686cde180cd06bdc0617ca Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Thu, 4 Feb 2010 00:19:07 -0800 Subject: Bump bundler dep to 0.9.1.pre1 --- ci/ci_build.rb | 2 +- rails.gemspec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ci/ci_build.rb b/ci/ci_build.rb index eb1f784bd7..522d1209c9 100755 --- a/ci/ci_build.rb +++ b/ci/ci_build.rb @@ -23,7 +23,7 @@ build_results = {} build_results[:geminstaller] = system "sudo gem install rubygems-update -v 1.3.5 --no-ri --no-rdoc" # Install required version of bundler. -build_results[:geminstaller] = system "sudo gem install bundler -v 0.9.0.pre4 --prerelease --no-ri --no-rdoc" +build_results[:geminstaller] = system "sudo gem install bundler -v 0.9.1.pre1 --prerelease --no-ri --no-rdoc" cd root_dir do puts diff --git a/rails.gemspec b/rails.gemspec index 37a9636ad7..fb69baebf4 100644 --- a/rails.gemspec +++ b/rails.gemspec @@ -19,5 +19,5 @@ Gem::Specification.new do |s| s.add_dependency('activeresource', '= 3.0.0.beta') s.add_dependency('actionmailer', '= 3.0.0.beta') s.add_dependency('railties', '= 3.0.0.beta') - s.add_dependency('bundler', '>= 0.9.0.pre5') + s.add_dependency('bundler', '>= 0.9.1.pre1') end -- cgit v1.2.3 From c9ec28b2b643de7a315276cc285d7a4506b9d568 Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Thu, 4 Feb 2010 00:21:47 -0800 Subject: Use a normal gem source url instead of a magic symbol --- railties/lib/generators/rails/app/templates/Gemfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/railties/lib/generators/rails/app/templates/Gemfile b/railties/lib/generators/rails/app/templates/Gemfile index ce495177eb..2ad3041ab9 100644 --- a/railties/lib/generators/rails/app/templates/Gemfile +++ b/railties/lib/generators/rails/app/templates/Gemfile @@ -1,5 +1,5 @@ # Edit this Gemfile to bundle your application's dependencies. -source :gemcutter +source 'http://gemcutter.org' <% if !dev_or_edge? %> gem "rails", "<%= Rails::VERSION::STRING %>" -- cgit v1.2.3