aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #14203 from Alwahsh/aabouelhamayedGodfrey Chan2014-02-273-0/+42
|\ | | | | Fix a bug affecting validations of enum attributes
| * Fix a bug affecting validations of enum attributesTheMonster2014-02-273-0/+42
|/ | | | | | | | | | | | | | This fixes a bug where any enum attribute of a model would be evaluated always as 0 when calling the database on validations. This fix converts the value of the enum attribute to its integer value rather than the string before building the relation as the bug occured when the string finally gets converted to integer using string.to_i which converts it to 0. [Vilius Luneckas, Ahmed AbouElhamayed]
* Merge pull request #14174 from kuldeepaggarwal/fix-resource_generator_testYves Senn2014-02-273-5/+5
|\ | | | | fix test cases
| * modify model generator warning message. refs [#174c9f0]Kuldeep Aggarwal2014-02-273-5/+5
| |
* | Replace "data store" with database [ci skip]Robin Dupret2014-02-271-1/+1
| | | | | | | | Active Record is specifically for databases. Refs #12101.
* | Merge pull request #11481 from sorentwo/fetch-multi-hashGuillermo Iguaran2014-02-273-14/+19
|\ \ | | | | | | Cache#fetch_multi returns a Hash instead of an Array
| * | Return a hash rather than array from fetch_multiParker Selbert2014-02-263-14/+19
|/ / | | | | | | | | | | | | The current implementation of `fetch_multi` returns an array and has no means to easily backtrack which names yielded which results. By changing the return value to a Hash we retain the name information. Hash#values can be used on the response if only the values are needed.
* | Merge pull request #14216 from garethson/routes-docs-typoArthur Nogueira Neves2014-02-261-18/+18
|\ \ | | | | | | [skip ci] Fixes docs typo in nested resource path helpers
| * | Fixes docs typo in nested resource path helpers [skip ci]Gareth du Plooy2014-02-261-18/+18
| | |
* | | Fix concerning module reference [ci skip]Carlos Antonio da Silva2014-02-261-1/+1
| | |
* | | Fix some validators when used on model instanceEric Hutzelman2014-02-263-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | Now that Validator #setup is called from the initializer, we need a reference to the model's class to be passed in to allow the validators to continue functioning when used at the instance level. Closes #14134.
* | | Pass strings to demodulize methodCarlos Antonio da Silva2014-02-261-1/+1
|/ / | | | | | | | | Goes along with fea1cdcff4d50d302d8e8532432c3ab107ff816d and 59ec4562a2e70df455b2e44a67c340fa5254e26e.
* | Merge pull request #14105 from twooster/fix-controller-testsAaron Patterson2014-02-264-1/+29
|\ \ | | | | | | Fix controller test not resetting @_url_options
| * | Fix controller test not resetting @_url_optionsTony Wooster2014-02-264-1/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 4f2cd3e9 introduced a bug by reordering the call to `@controller.recycle!` above the call to `build_request_uri`. The impact of this was that the `@_url_options` cache ends up not being reset between building a request URI (occurring within the test controller) and the firing of the actual request. We encountered this bug because we had the following setup: class MinimumReproducibleController < ActionController::Base before_filter { @param = 'param' } def index render text: url_for(params) end def default_url_options { custom_opt: @param } end end def test_index get :index # builds url, then fires actual request end The first step in `get :index` in the test suite would populate the @_url_options cache. The subsequent call to `url_for` inside of the controller action would then utilize the uncleared cache, thus never calling the now-updated default_url_options. This commit fixes this bug calling recycle! twice, and removes a call to set response_body, which should no longer be needed since we're recycling the request object explicitly.
* | | pass strings to the underscore methodAaron Patterson2014-02-262-3/+3
| | |
* | | speed up `underscore` in cases that don't need to do anythingAaron Patterson2014-02-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Benchmark: Benchmark.ips do |x| x.report("home") { "home".underscore } x.report("Home") { "Home".underscore } x.report("homeBase") { "homeBase".underscore } x.report("home::base") { "home::base".underscore } end Before: Calculating ------------------------------------- home 2598 i/100ms Home 2463 i/100ms homeBase 2300 i/100ms home::base 2086 i/100ms ------------------------------------------------- home 28522.3 (±14.7%) i/s - 140292 in 5.065102s Home 29165.8 (±14.9%) i/s - 140391 in 5.000475s homeBase 26218.5 (±7.1%) i/s - 131100 in 5.030485s home::base 27712.3 (±5.9%) i/s - 139762 in 5.064077s After: Calculating ------------------------------------- home 23163 i/100ms Home 2432 i/100ms homeBase 2160 i/100ms home::base 2265 i/100ms ------------------------------------------------- home 1501614.8 (±10.2%) i/s - 7412160 in 5.009540s Home 28754.0 (±8.5%) i/s - 143488 in 5.033886s homeBase 25331.1 (±5.6%) i/s - 127440 in 5.047940s home::base 27089.9 (±5.5%) i/s - 135900 in 5.033516s
* | | pass the class name to `tableize`Aaron Patterson2014-02-261-1/+1
| | | | | | | | | | | | We should not rely on to_s to return the name of the class
* | | Merge pull request #14215 from robertomiranda/docs-rake-notesGuillermo Iguaran2014-02-261-1/+1
|\ \ \ | |/ / |/| | [ci skip] Update list of files extensions in rake notes guide
| * | [ci skip] Update list of files extensions in rake notes guiderobertomiranda2014-02-261-1/+1
|/ /
* | Merge pull request #14211 from loganhasson/masterXavier Noria2014-02-261-12/+12
|\ \ | | | | | | [ci skip] Move association class method notes
| * | [ci skip] Move association class method notesLogan Hasson2014-02-261-12/+12
| | | | | | | | | | | | Make explanation of association class methods clearer by moving notes to beginning of each example section.
* | | extract common code in `uuid_test.rb`.Yves Senn2014-02-261-60/+57
| | |
* | | move PostgreSQL UUID tests from `datatype_test.rb` to `uuid_test.rb`.Yves Senn2014-02-262-16/+36
| | |
* | | Merge pull request #14208 from lukesteensen/remove-migration-exampleXavier Noria2014-02-261-153/+0
|\ \ \ | | | | | | | | [ci skip] remove guide section on models in migrations [ci skip]
| * | | [ci skip] remove guide section on models in migrationsLuke Steensen2014-02-261-153/+0
|/ / / | | | | | | | | | | | | | | | Both examples given are incorrect, and no one can seem to come up with a realistic situation where this is an actual problem. For now, it seems like the best thing to do is just scrap the section altogether.
* | | test case for custom PostgreSQL enum type.Yves Senn2014-02-261-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test currently outputs the following warning: ``` unknown OID: current_mood(3567879) (SELECT "postgresql_enums".* FROM "postgresql_enums" ORDER BY "postgresql_enums"."id" ASC LIMIT 1) unknown OID: current_mood(3567879) (SELECT "postgresql_enums".* FROM "postgresql_enums" WHERE "postgresql_enums"."id" = $1 LIMIT 1) ``` We have an open PR to deal with this issue. It will dynamically register the OID for enum columns. This test case is merely to exhibit the current behavior of PostgreSQL enum columns.
* | | Merge pull request #14149 from tjschuck/bcrypt_gem_renameCarlos Antonio da Silva2014-02-264-7/+11
|\ \ \ | | | | | | | | Bump version of bcrypt gem
| * | | Bump version of bcrypt gemT.J. Schuck2014-02-254-7/+11
| | | |
* | | | Remove inclusion of rubysl gem for rbx on generated GemfileCarlos Antonio da Silva2014-02-252-16/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From #14026: Specific rbx-2 to limit testing on Rubinius 2.x (since there will be other versions of Rubinius > 2.x soon). Also, as of Rubinius 2.2.5, it is no longer necessary to bundle the rubysl gem. This is what Rails master/4.1 supports, so we don't need to add rubysl to gemfiles anymore.
* | | | let `insert_record` actuall save the object.Aaron Patterson2014-02-254-4/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `before_add` callbacks are fired before the record is saved on `has_and_belongs_to_many` assocations *and* on `has_many :through` associations. Before this change, `before_add` callbacks would be fired before the record was saved on `has_and_belongs_to_many` associations, but *not* on `has_many :through` associations. Fixes #14144
* | | | Merge pull request #14200 from spencer1248/fix_typo_in_app_generator_test_nameCarlos Antonio da Silva2014-02-251-1/+1
|\ \ \ \ | | | | | | | | | | Fix test name typo in app generator tests.
| * | | | [skip ci] Fix test name typo in app generator tests.Spencer Rogers2014-02-251-1/+1
| | | | |
* | | | | Merge remote-tracking branch ↵Jon Leighton2014-02-255-13/+31
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | 'chancancode/fix_instance_method_already_implemented' Conflicts: activerecord/CHANGELOG.md
| * | | | Fixed STI classes not defining an attribute method if there is aGodfrey Chan2014-02-235-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | conflicting private method defined on its ancestors. The problem is that `method_defined_within?(name, klass, superklass)` only works correclty when `klass` and `superklass` are both `Class`es. If both `klass` and `superklass` are both `Class`es, they share the same inheritance chain, so if a method is defined on `klass` but not `superklass`, this method must be introduced at some point between `klass` and `superklass`. This does not work when `superklass` is a `Module`. A `Module`'s inheritance chain contains just itself. So if a method is defined on `klass` but not on `superklass`, the method could still be defined somewhere upstream, e.g. in `Object`. This fix works by avoiding calling `method_defined_within?` with a module while still fufilling the requirement (checking that the method is defined withing `superclass` but not is not a generated attribute method). 4d8ee288 is likely an attempted partial fix for this problem. This unrolls that fix and properly check the `superclass` as intended. Fixes #11569.
* | | | | Merge pull request #14199 from arthurnn/travis_211Guillermo Iguaran2014-02-251-2/+1
|\ \ \ \ \ | | | | | | | | | | | | travis s/2.1.0/2.1.1
| * | | | | travis s/2.1.0/2.1.1Arthur Neves2014-02-251-2/+1
|/ / / / /
* | | | | Merge pull request #14152 from ↵Aaron Patterson2014-02-252-24/+13
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | schneems/schneems/fix-ar-wtf-why-is-there-no-environment Handle missing environment from non empty config
| * | | | Handle missing environment from non empty configschneems2014-02-212-24/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If using a `DATABASE_URL` and a `database.yml`. The connection information in `DATABASE_URL` should be merged into whatever environment we are in. As released in 4.1.0rc1 if someone has a database.yml but is missing a key like production: ```yml development: host: localhost ``` Then the check for blank config will return false so the information from the `DATABASE_URL` will not be used when attempting to connect to the `production` database and the connection will incorrectly fail. This commit fixes this problem and adds a test for the behavior. In addition the ability to specify a connection url in a `database.yml` like this: ``` production: postgres://localhost/foo ``` Was introduced in 4.1.0rc1 though should not be used, instead using a url sub key ``` production: url: postgres://localhost/foo ``` This url sub key was also introduced in 4.1.0rc1 though the `production: postgres://localhost/foo` was not removed. As a result we should not test this behavior.
* | | | | Merge pull request #14177 from yahonda/skip_tests_if_duplicate_index_not_allowedYves Senn2014-02-251-10/+13
|\ \ \ \ \ | | | | | | | | | | | | Skip test_migrate_revert_add_index_with_name for some databases
| * | | | | Skip test_migrate_revert_add_index_with_name if databasesYasuo Honda2014-02-251-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | do not allow to create duplicate indexes on the same columns
* | | | | | Optimize getting started guide images, and use png instead of jpgCarlos Antonio da Silva2014-02-2516-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We noticed the rails gem increased in size between the beta and rc versions, and the reason is that some guides images were updated but not properly optimized, and one image changed from png to jpg, way bigger. Converting the jpg image back to png, and using ImageOptim to optimize all the images for web view, improves the situation [ci skip]. --- In current master/4-1-stable: 508K guides/assets/images/getting_started/ In v4.1.0.beta1: 268K guides/assets/images/getting_started/ In 4-0-stable 328K guides/assets/images/getting_started/ After the patch: 260K guides/assets/images/getting_started/
* | | | | | :scissors: [ci skip]Carlos Antonio da Silva2014-02-251-5/+5
|/ / / / /
* | | | | Merge pull request #14193 from ys/patch-1Vijay Dev2014-02-251-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Add missing parantheses in index_exists?
| * | | | | Add missing parantheses in index_exists?Yannick Schutz2014-02-251-1/+1
| | | | | |
* | | | | | Point master changelogs to 4-1-stable branchCarlos Antonio da Silva2014-02-258-3831/+8
|/ / / / / | | | | | | | | | | | | | | | Remove 4-1 related entries from master [ci skip]
* | | | | `ActionDispatch::Head` was replaced by `Rack::Head`. Closes #14191.Yves Senn2014-02-251-1/+0
| | | | | | | | | | | | | | | | | | | | See 449039a86d802871b707dfb51ac1ed96d53526f9 for the original commit.
* | | | | Merge pull request #14006 from Loremaster/strong_params_improvementXavier Noria2014-02-253-6/+28
|\ \ \ \ \ | | | | | | | | | | | | Sungularize ActionController::UnpermittedParameters error in case when only 1 parameter is unpermitted.
| * | | | | Simple Sungularize ActionController::UnpermittedParameters error in case ↵Serj L2014-02-243-6/+28
| | | | | | | | | | | | | | | | | | | | | | | | when only 1 parameter is unpermitted.
* | | | | | Merge pull request #14186 from ch33hau/standardized-punctuationYves Senn2014-02-251-3/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | Standardized punctuation.
| * | | | | | [skip ci] Standardized punctuation.ch33hau2014-02-251-3/+3
|/ / / / / /