aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Updated link to RubyGems siteJason Noble2012-11-241-1/+1
|
* Merge branch 'master' of github.com:lifo/docrailsVijay Dev2012-11-233-4/+4
|\
| * fixed a minor spelling errorLennart Tange2012-11-201-1/+1
| |
| * embed code example using backticks in caching guideSergey Nartimov2012-11-201-2/+2
| |
| * remove previous commitMichel Grootjans2012-11-201-1/+1
| |
| * bug in example '<%= form_for ...' should be '<% form_for ...'Michel Grootjans2012-11-201-1/+1
| |
| * Fix broken link in Active Record Query Interface guideJaime Iniesta2012-11-181-1/+1
| |
* | Merge pull request #8291 from senny/8265_build_with_polymorphic_associationRafael Mendonça França2012-11-223-1/+15
|\ \ | | | | | | | | | | | | | | | | | | prevent mass assignment of polymorphic type when using `build` Conflicts: activerecord/CHANGELOG.md
| * | prevent mass assignment of polymorphic type when using `build`Yves Senn2012-11-223-1/+15
| | | | | | | | | | | | Closes #8265
* | | Indent changelog markdown code to highlight correctlyCarlos Antonio da Silva2012-11-221-11/+11
| | | | | | | | | | | | [ci skip]
* | | Merge pull request #8114 from guilleiguaran/use-symbols-in-scopeAndrew White2012-11-223-1/+43
|\ \ \ | | | | | | | | Allow setting a symbol as path in scope on routes
| * | | Allow setting a symbol as path in scope on routesGuillermo Iguaran2012-11-213-1/+43
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Was surprising found that this example doesn't work: scope :api do resources :users end and the right form to use it is: scope 'api' do resources :users end I think this should work similary as `namespace` where both are allowed. These two are equivalent: namespace :api do resources :users end namespace 'api' do resources :user end
* | | Remove private partial/template renderer methodsCarlos Antonio da Silva2012-11-213-14/+3
| | | | | | | | | | | | | | | | | | Since now these objects are not cached anymore, there's no need to have these private methods, just instantiate each of them in the necessary place.
* | | Merge branch 'deprecate-calculations-with-block'Carlos Antonio da Silva2012-11-216-49/+25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow up of the discussion from the original merge commit: https://github.com/rails/rails/commit/f9cb645dfcb5cc89f59d2f8b58a019486c828c73#commitcomment-1414561 We want to avoid people's mistakes with methods like count and sum when called with a block, that can easily lead to code performing poorly and that could be way better written with a db query. Please check the discussion there for more background. Closes #8268
| * | | Remove the #sum method from CollectionAssociationCarlos Antonio da Silva2012-11-211-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since edd94cee9af1688dd036fc58fd405adb30a5e0da, CollectionProxy delegates all calculation methods - except count - to the scope, which does basically what this method was doing, but since we're delegating from the proxy, the association method was never called.
| * | | Deprecate Relation#sum with a block.Carlos Antonio da Silva2012-11-215-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | To perform a sum calculation over the array of elements, use to_a.sum(&block). Please check the discussion in f9cb645dfcb5cc89f59d2f8b58a019486c828c73 for more context.
| * | | Revert "Yield only one argument instead of splatting."Carlos Antonio da Silva2012-11-213-37/+3
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f9cb645dfcb5cc89f59d2f8b58a019486c828c73. Conflicts: activerecord/CHANGELOG.md Revert "Allow blocks for count with ActiveRecord::Relation. Document and test that sum allows blocks" This reverts commit 9cc2bf69ce296b7351dc612a8366193390a305f3. Conflicts: activerecord/lib/active_record/relation/calculations.rb
* | | Don't allocate new strings in compiled attribute methodsJon Leighton2012-11-213-21/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This improves memory and performance without having to use symbols which present DoS problems. Thanks @headius and @tenderlove for the suggestion. This was originally committed in f1765019ce9b6292f2264b4601dad5daaffe3a89, and then reverted in d3494903719682abc0948bef290af0d3d7b5a440 due to it causing problems in a real application. This second attempt should solve that. Benchmark --------- require 'active_record' require 'benchmark/ips' ActiveRecord::Base.establish_connection(adapter: 'sqlite3', database: ':memory:') class Post < ActiveRecord::Base connection.create_table :posts, force: true do |t| t.string :name end end post = Post.create name: 'omg' Benchmark.ips do |r| r.report('Post.new') { Post.new name: 'omg' } r.report('post.name') { post.name } r.report('post.name=') { post.name = 'omg' } r.report('Post.find(1).name') { Post.find(1).name } end Before ------ Calculating ------------------------------------- Post.new 1419 i/100ms post.name 7538 i/100ms post.name= 3024 i/100ms Post.find(1).name 243 i/100ms ------------------------------------------------- Post.new 20637.6 (±12.7%) i/s - 102168 in 5.039578s post.name 1167897.7 (±18.2%) i/s - 5186144 in 4.983077s post.name= 64305.6 (±9.6%) i/s - 317520 in 4.998720s Post.find(1).name 2678.8 (±10.8%) i/s - 13365 in 5.051265s After ----- Calculating ------------------------------------- Post.new 1431 i/100ms post.name 7790 i/100ms post.name= 3181 i/100ms Post.find(1).name 245 i/100ms ------------------------------------------------- Post.new 21308.8 (±12.2%) i/s - 105894 in 5.053879s post.name 1534103.8 (±2.1%) i/s - 7634200 in 4.979405s post.name= 67441.0 (±7.5%) i/s - 337186 in 5.037871s Post.find(1).name 2681.9 (±10.6%) i/s - 13475 in 5.084511s
* | | Move migration test together with other join table testsCarlos Antonio da Silva2012-11-212-7/+6
| | |
* | | Use secure password min cost option in its own tests for a speed upCarlos Antonio da Silva2012-11-211-2/+10
|/ / | | | | | | Around 0.564359s => 0.092244s speed up in my machine.
* | Merge pull request #8183 from jcoglan/objectless_sessionsJon Leighton2012-11-213-11/+47
|\ \ | | | | | | Store FlashHashes in the session as plain hashes
| * | Store FlashHashes in the session as plain hashes rather than custom objects ↵James Coglan2012-11-093-11/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with unstable class names and instance variables. Refactor FlashHash to take values for its ivars in the constructor, to pretty up FlashHash.from_session_value. Remove stale comment on FlashHash: it is no longer Marshaled in the session so we can change its implementation. Remove blank lines I introduced in controller/test_case.rb. Unit tests for FlashHash#to_session_value. Put in a compatibility layer to accept FlashHash serializations from Rails 3.0+. Test that Rails 3.2 session flashes are correctly converted to the new format. Remove code path for processing Rails 3.0 FlashHashes since they can no longer deserialize. Fix session['flash'] deletion condition: it will never be empty?, it will either be nil or a hash with 'discard' and 'flashes' keys.
* | | Merge pull request #7716 from steveklabnik/issue_7715Rafael Mendonça França2012-11-212-1/+8
|\ \ \ | | | | | | | | Coerce strings in create_join_table.
| * | | Coerce strings in create_join_table.Steve Klabnik2012-11-212-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If you accidentally pass a string and a symbol, this breaks. So we coerce them both to strings. Fixes #7715
* | | | Merge pull request #8290 from cpatuzzo/masterCarlos Antonio da Silva2012-11-211-1/+1
|\ \ \ \ | | | | | | | | | | Fixed a typo
| * | | | TypoChris Patuzzo2012-11-211-1/+1
|/ / / /
* | | | Merge pull request #6245 from bogdan/bc_timestampRafael Mendonça França2012-11-214-3/+24
|\ \ \ \ | | | | | | | | | | Postgresql adapter: fix handling of BC timestamps
| * | | | Fix postgresql adapter to handle bc timestamps correctlyBogdan Gusiev2012-11-214-3/+24
| | | | |
* | | | | Merge pull request #8289 from semaperepelitsa/pg_adapter_refactoring_squashedRafael Mendonça França2012-11-212-13/+39
|\ \ \ \ \ | |/ / / / |/| | | | Refactoring, testing and documenting pg_connection.distinct
| * | | | Refactoring, testing and documenting pg_connection.distinctSemyon Perepelitsa2012-11-212-13/+39
|/ / / /
* | | | Remove return guard and use code convetionsRafael Mendonça França2012-11-201-7/+11
| | | |
* | | | Merge pull request #8280 from asanghi/fix_guide_field_with_error_procRafael Mendonça França2012-11-201-2/+6
|\ \ \ \ | | | | | | | | | | fix guide with field_with_error proc example
| * | | | fix guide with field_with_error proc exampleAditya Sanghi2012-11-201-2/+6
| | | | |
* | | | | Merge pull request #8282 from arunagw/warning_removed_for_ruby2Carlos Antonio da Silva2012-11-201-0/+2
|\ \ \ \ \ | | | | | | | | | | | | Initialize accessors to remove some warnings in Ruby 2.0
| * | | | | Initialize accessors to remove some warnings in Ruby 2.0Arun Agrawal2012-11-211-0/+2
|/ / / / /
* | | | | Merge pull request #8276 from pwnall/pgsql_text_limitsRafael Mendonça França2012-11-204-0/+35
|\ \ \ \ \ | |/ / / / |/| | | | Postgresql doesn't accepts limits on text columns
| * | | | Postgresql doesn't accepts limits on text columns.Victor Costan2012-11-204-0/+35
|/ / / /
* | | | Merge pull request #8279 from gaurish/database_errorCarlos Antonio da Silva2012-11-201-0/+4
|\ \ \ \ | | | | | | | | | | Improved Error handling when parsing database.yaml, Fixes #8143
| * | | | Better Error handling when parsing database.yamlGaurish Sharma2012-11-201-0/+4
|/ / / / | | | | | | | | | | | | | | | | Provides a better error message incase the database.yaml has some errors.
* | | | Merge branch 'url-for-params'Carlos Antonio da Silva2012-11-193-2/+16
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix error when using a non-hash query argument named "params" in `url_for`. Before: url_for(params: "") # => undefined method `reject!' for "":String After: url_for(params: "") # => http://www.example.com?params=` Closes #8233
| * | | | Correct the use of params options when given to url_forCarlos Antonio da Silva2012-11-193-10/+16
| | | | | | | | | | | | | | | | | | | | Merge url for tests and add changelog entry for #8233.
| * | | | Fix issue with params in url_fortumayun2012-11-192-1/+9
|/ / / / | | | | | | | | | | | | | | | | | | | | With a "params" argument, the following error is raised: undefined method `reject!` for "":String
* | | | Refactor request tests, remove #with_set methodCarlos Antonio da Silva2012-11-191-8/+3
| | | |
* | | | Be a bit less conservative with mysql in adapterCarlos Antonio da Silva2012-11-191-1/+1
| | | |
* | | | Merge pull request #8212 from senny/8197_make_render_in_spacer_template_workJosé Valim2012-11-193-2/+18
|\ \ \ \ | | | | | | | | | | render every partial with a new `PartialRenderer`.
| * | | | render every partial with a new `PartialRenderer`.Yves Senn2012-11-193-2/+18
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This resolves issues when rendering nested partials. Previously the `PartialRenderer` was reused which led to situations where the state of the renderer was reset. Closes #8197
* | | | Merge pull request #8044 from nateberkopec/block_does_not_set_parts_orderRafael Mendonça França2012-11-194-46/+31
|\ \ \ \ | | | | | | | | | | Explicit multipart messages respect :parts_order
| * | | | Explicit multipart messages respect :parts_orderNate Berkopec2012-11-194-46/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As issue #7978, the order in which ActionMailer sends multipart messages could be unintentionally overwritten if a block is passed to the mail method. This changes the mail method such that :parts_order is always respected, regardless of whether a block is passed to mail.
* | | | | Add UpgradeSignatureToEncryptionCookieStore to upgrading_ruby_on_rails guideSantiago Pastorino2012-11-191-0/+2
| | | | |
* | | | | Fix UpgradeSignatureToEncryptionCookieStore docSantiago Pastorino2012-11-191-9/+4
|/ / / /