aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add link for Domain-Specific Language [ci skip]Andrey Nering2014-12-191-2/+3
|
* Merge pull request #18100 from chancancode/serve_static_filesGodfrey Chan2014-12-1912-18/+95
| | | | | | Allow static asset serving from env variable (enhanced!) Conflicts: railties/CHANGELOG.md
* last pass to the autoloading guide before release [ci skip]Xavier Noria2014-12-191-17/+44
|
* Remove rack and i18n master from bug report tempaltes [ci skip]Rafael Mendonça França2014-12-192-4/+0
|
* Use released I18n 0.7.0Carlos Antonio da Silva2014-12-191-1/+1
|
* Merge pull request #18082 from rails/17945_purge_in_test_onlyYves Senn2014-12-1911-7/+93
|\ | | | | `db:schema:load` and `db:structure:load` do not purge the database
| * `force: :cascade` to recreate tables referenced by foreign-keys.Yves Senn2014-12-199-5/+60
| |
| * `db:structure:load` and `db:schema:load` no longer purge the database.Yves Senn2014-12-183-2/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #17945 `db:test:prepare` still purges the database to always keep the test database in a consistent state. This patch introduces new problems with `db:schema:load`. Prior to the introduction of foreign-keys, we could run this file against a non-empty database. Since every `create_table` containted the `force: true` option, this would recreate tables when loading the schema. However with foreign-keys in place, `force: true` wont work anymore and the task will crash. /cc @schneems
* | Use released rackGodfrey Chan2014-12-192-2/+2
| | | | | | | | `rack.version` was bumped in https://github.com/rack/rack/commit/28e77c710ac2ddb35c436d78d72e28f28f964446
* | Revert "Merge pull request #18003 from ↵Godfrey Chan2014-12-191-11/+6
| | | | | | | | | | | | | | | | | | | | sikachu/permit_all_parameters-thread-safety" This reverts commit da5cc10e945552da54234f858470238a3fc36767. Fixes #18091 See also https://github.com/rails/rails/pull/18003#commitcomment-9030909
* | Output extension is no longer generated [ci skip]Zachary Scott2014-12-181-4/+4
| | | | | | | | /cc @senny Is this change documented somewhere?
* | Enable Travis CI container-modeRafael Mendonça França2014-12-181-3/+5
| | | | | | | | And also bundler cache
* | Merge pull request #18077 from claudiob/add-docs-for-test-orderRafael Mendonça França2014-12-182-2/+17
|\ \ | | | | | | Add docs for AS::TestCase::test_order
| * | Add docs for AS::TestCase::test_orderclaudiob2014-12-182-2/+17
|/ / | | | | | | | | | | Document `test_order` and `test_order=` from `ActiveSupport::TestCase`. [ci skip]
* | Merge pull request #18087 from georgemillo/patch-2Eileen M. Uchitelle2014-12-181-2/+2
|\ \ | | | | | | Spelling fix [ci skip]
| * | Spelling fix [ci skip]George Millo2014-12-181-2/+2
|/ /
* | passed a spell checker, not bad [ci skip]Xavier Noria2014-12-181-1/+1
| |
* | adds another examle to the constants not missing gotcha [ci skip]Xavier Noria2014-12-181-0/+55
|/ | | | /cc @matthewd
* Relax the UUID regexGodfrey Chan2014-12-182-12/+9
| | | | | | | | Apparently PG does not validate against RFC 4122. The intent of the original patch is just to protect against PG errors (which potentially breaks txns, etc) because of bad user input, so we shouldn't try any harder than PG itself. Closes #17931
* Merge pull request #18081 from yui-knk/fix/capture_helperAbdelkader Boudih2014-12-181-1/+2
|\ | | | | [ci skip] Fix HTML format on comment
| * [ci skip] Fix HTML format on commentyui-knk2014-12-181-1/+2
|/
* Fix typo in nodoc should be `:nodoc:` for RDoc to parse correctlyZachary Scott2014-12-171-1/+1
|
* Merge pull request #18076 from andreynering/guides-changelogZachary Scott2014-12-171-1/+1
|\ | | | | Fix name on changelog [ci skip]
| * Fix name on changelog [ci skip]Andrey Nering2014-12-171-1/+1
|/
* Merge pull request #18063 from claudiob/remove-as-time-with-zone-sinceRafael Mendonça França2014-12-171-10/+1
|\ | | | | Replace AS::TimeWithZone#since with alias to +
| * Replace AS::TimeWithZone#since with alias to +claudiob2014-12-161-10/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Stems from [Google group discussion](https://groups.google.com/forum/#!topic/rubyonrails-core/jSPbP-TNLb0). Currently `AS::TimeWithZone` has two methods to add an interval to a time: `+(other)` and `since(other)` ([docs](http://edgeapi.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html)). The two methods are "pretty much" equivalent in every case: 1. When adding any interval to an `AS::TimeWithZone` representing a `Time`: ```ruby t = Time.now.in_time_zone #=> Thu, 04 Dec 2014 18:56:28 EST -05:00 t + 1 == t.since(1) #=> true t + 1.day == t.since(1.day) #=> true t + 1.month == t.since(1.month) #=> true ``` 2. When adding any interval to an `AS::TimeWithZone` representing a `Date`: ```ruby d = Date.today.in_time_zone #=> Thu, 04 Dec 2014 00:00:00 EST -05:00 d + 1 == d.since(1) #=> true d + 1.day == d.since(1.day) #=> true d + 1.month == d.since(1.month) #=> true ``` 3. When adding any interval to an `AS::TimeWithZone` representing a `DateTime`: ```ruby dt = DateTime.now.in_time_zone #=> Thu, 04 Dec 2014 18:57:28 EST -05:00 dt + 1 == dt.since(1) #=> true dt + 1.day == dt.since(1.day) #=> true dt + 1.month == dt.since(1.month) #=> false ``` As you can see, the only case in which they differ is when the interval added to a `DateTime` is in a format like `1.month`. However, this usage of "since" is explicitly discouraged by the [documentation of `DateTime#since`](https://github.com/rails/rails/blob/master/activesupport/lib/active_support/core_ext/date_time/calculations.rb#L86L88): > Returns a new DateTime representing the time a number of seconds since the instance time. > Do not use this method in combination with x.months, use months_since instead! And indeed, following this recommendation the correct result is returned: ```ruby dt + 1.month == dt.months_since 1 #=> true ``` Therefore, my proposal is to remove the method definition of `TimeWithZone#since` and instead replace it with a simple `alias_method :since, :+`. The rationale is that the only case where they differ is a case that is explicitly discouraged as "wrong". In my opinion, having two methods named `since` and `+` and having to figure out exactly what the difference is makes the codebase more confusing. However, I understand this PR is "subjective", so if you feel like it's better to ignore this, feel free to close the PR. Thanks!
* | Merge pull request #18072 from exAspArk/thread_safe_gem_versionRafael Mendonça França2014-12-171-1/+1
|\ \ | | | | | | | | | Use thread_safe gem version greater or equal to 0.3.4
| * | use thread_safe gem version greater or equal to 0.3.4Evgeny Li2014-12-171-1/+1
| | |
* | | simpler example for the non-missing constants gotcha [ci skip]Xavier Noria2014-12-171-42/+39
|/ / | | | | | | | | | | | | | | | | The previous example was a little convoluted and the exposition claifying the parts that were correct albeit not totally obvious were interferring in my view. This example has less things going on and gets to the key problem with less balls in the air.
* | Merge pull request #18068 from kamipo/remove_unused_lineCarlos Antonio da Silva2014-12-171-1/+0
|\ \ | | | | | | Remove unused line
| * | Remove unused lineRyuta Kamizono2014-12-171-1/+0
| | |
* | | Merge pull request #18069 from yui-knk/fix/guideRafael Mendonça França2014-12-171-3/+3
|\ \ \ | |/ / |/| | [ci skip] Change three backticks to just one
| * | [ci skip] Change three backticks to just oneyui-knk2014-12-171-3/+3
|/ /
* | Merge pull request #18065 from y-yagi/fix_autoloading_guideXavier Noria2014-12-171-1/+1
|\ \ | |/ |/| fix link in autoloading guide [ci skip]
| * fix link in autoloading guide [ci skip]yuuji.yaginuma2014-12-171-1/+1
|/
* `update_column` take ruby-land input, not database-land inputSean Griffin2014-12-164-3/+27
| | | | | | | | | | | | | | | In the case of serialized columns, we would expect the unserialized value as input, not the serialized value. The original issue which made this distinction, #14163, introduced a bug. If you passed serialized input to the method, it would double serialize when it was sent to the database. You would see the wrong input upon reloading, or get an error if you had a specific type on the serialized column. To put it another way, `update_column` is a special case of `update_all`, which would take `['a']` and not `['a'].to_yaml`, but you would not pass data from `params` to it. Fixes #18037
* Merge pull request #17980 from gsamokovarov/rescuable-case-operatorRafael Mendonça França2014-12-163-4/+45
|\ | | | | Add class level case operator support for error dispatching in Rescuable
| * Add class level case operator support for error dispatching in RescuableGenadi Samokovarov2014-12-103-4/+45
| |
* | Merge pull request #18059 from andreynering/ar-guides-queryingRafael Mendonça França2014-12-161-5/+28
|\ \ | | | | | | Improving Method Chaining section [ci skip]
| * | Improving Method Chaining section [ci skip]Andrey Nering2014-12-161-5/+28
|/ /
* | Merge pull request #17995 from ↵Rafael Mendonça França2014-12-162-0/+9
|\ \ | | | | | | | | | | | | jethroo/fix/assert_template_with_unsupported_layout_type assert template should raise ArgumentError for unsupported layout types
| * | adding that assert_template with :layout will raise ArgumentError for ↵Carsten Wirth2014-12-162-0/+9
| | | | | | | | | | | | unknown layout type
* | | Merge pull request #18055 from jonatack/patch-8Zachary Scott2014-12-161-2/+2
|\ \ \ | | | | | | | | "backoffice" -> "back office", "lookup" -> "look up" [ci skip]
| * | | "backoffice" -> "back office", "lookup" -> "look up"Jon Atack2014-12-161-2/+2
|/ / / | | | | | | | | | | | | "Lookup" is a noun, but not a verb. The verb is "look up". [skip ci]
* | | Merge pull request #18049 from yuki3738/fix_rails_db_command_errorRafael Mendonça França2014-12-161-1/+1
|\ \ \ | | | | | | | | Add a code checking about file or not to the rails db command
| * | | Add a code checking about file or not to the rails db commandyuki37382014-12-161-1/+1
| | | |
* | | | Merge pull request #18052 from timoschilling/reset_variantsRafael Mendonça França2014-12-162-1/+9
|\ \ \ \ | | | | | | | | | | allow reseting of request variants
| * | | | allow reseting of request variantsTimo Schilling2014-12-162-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current implementation of `variants=` don't allow a resetting to nil, wich is the default value. This results in the following code smell: ```ruby case request.user_agent when /iPhone/ request.variants = :phone when /iPad/ request.variants = :ipad end ``` With the ability to reset variants to nil, it could be: ```ruby request.variants = case request.user_agent when /iPhone/ :phone when /iPad/ :ipad end ```
* | | | | Merge pull request #18032 from claudiob/add-test-for-after-validate-callbacksRafael Mendonça França2014-12-162-6/+28
|\ \ \ \ \ | | | | | | | | | | | | Add test for ActiveModel `after_validation`, `after_` and `around_` callbacks returning false
| * | | | | Add AM test: after/around callback returning falseclaudiob2014-12-141-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This stems from https://github.com/rails/rails/pull/17227#discussion_r21641358 It's simply a clarification of the current behavior by which if an `after_` or `around_` ActiveModel callback returns +false+, then the callback chain **is not halted**. The callback chain in ActiveModel is only halted when a `before_` callback returns `false`.