aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add `ActiveRecord::Relation#extract_associated` for extracting associated ↵David Heinemeier Hansson2019-03-294-1/+30
| | | | | record (#35784) * Add `ActiveRecord::Relation#extract_associated` for extracting associated records from a relation
* Merge pull request #35794 from kamipo/type_cast_symbol_falseRyuta Kamizono2019-03-304-1/+39
|\ | | | | Type cast falsy boolean symbols on boolean attribute as false
| * Type cast falsy boolean symbols on boolean attribute as falseRyuta Kamizono2019-03-304-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before 34cc301, type casting by boolean attribute when querying is a no-op, so finding by truthy boolean string (i.e. `where(value: "true") # => value = 'true'`) didn't work as expected (matches it to FALSE in MySQL #32624). By type casting is ensured, a value on boolean attribute is always serialized to TRUE or FALSE. In PostgreSQL, `where(value: :false) # => value = 'false'` was a valid SQL, so 34cc301 is a regresson for PostgreSQL since all symbol values are serialized as TRUE. I'd say using `:false` is mostly a developer's mistake (user's input basically comes as a string), but `:false` on boolean attribute is serialized as TRUE is not a desirable behavior for anybody. This allows falsy boolean symbols as false, i.e. `klass.create(value: :false).value? # => false` and `where(value: :false) # => value = FALSE`. Fixes #35676.
* | Merge pull request #35792 from ↵Rafael França2019-03-291-3/+3
|\ \ | | | | | | | | | | | | abhaynikam/35789-follow-up-to-update-test-description-for-i18n-customize-full-message Updated the test description for i18n-customize-full-message after rename in #35789
| * | Fixed the test description for i18n-customize-full-message after rename in ↵Abhay Nikam2019-03-301-3/+3
|/ / | | | | | | #35789
* | Merge pull request #35781 from excid3/rich_text-field-generatorRafael França2019-03-298-14/+81
|\ \ | | | | | | Add rich_text field to model generators
| * | Add rich_text field to model generatorsChris Oliver2019-03-288-14/+81
| | |
* | | Merge pull request #35789 from prathamesh-sonpatki/customize-full-messageRafael França2019-03-296-25/+25
|\ \ \ | | | | | | | | Rename `i18n_full_message` config option to `i18n_customize_full_message`
| * | | Rename `i18n_full_message` config option to `i18n_customize_full_message`Prathamesh Sonpatki2019-03-296-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | - I feel `i18n_customize_full_messages` explains the meaning of the config better. - Followup of https://github.com/rails/rails/pull/32956
* | | | Add Active Model release notes for Rails 6 [ci skip] (#35790)प्रथमेश Sonpatki2019-03-291-0/+12
|/ / /
* | | Merge pull request #35788 from prathamesh-sonpatki/fix-annotate-typoKasper Timm Hansen2019-03-295-9/+9
|\ \ \ | |_|/ |/| | Fix annotated typo
| * | Fix annotated typoPrathamesh Sonpatki2019-03-295-9/+9
|/ /
* | Add load hook for ActiveStorage::AttachmentGeorge Claghorn2019-03-283-2/+5
| |
* | Add ActiveStorage::Service#openGeorge Claghorn2019-03-286-30/+32
| |
* | Merge pull request #35308 from ↵Rafael França2019-03-284-1/+39
|\ \ | | | | | | | | | | | | erose/better-error-reporting-for-syntax-errors-in-templates Display a more helpful error message when an ERB template has a Ruby syntax error.
| * | Add handling and tests.Eli Rose2019-02-174-1/+39
| | |
* | | Merge pull request #34405 from shugo/safe_buffer_backref_fixMatthew Draper2019-03-282-2/+55
|\ \ \ | | | | | | | | sub, sub!, gsub, and gsub! should set back references
| * | | Eliminate a thread local variable as suggested by nobuShugo Maeda2019-02-141-8/+1
| | | |
| * | | Remove trailing spaceShugo Maeda2018-11-081-1/+1
| | | |
| * | | Add a commented code example of what will be producedShugo Maeda2018-11-081-22/+22
| | | |
| * | | sub, sub!, gsub, and gsub! should set back referencesShugo Maeda2018-11-082-2/+62
| | | |
* | | | Merge pull request #35778 from shailesh-kalamkar/fix-typo-testing-guidesRyuta Kamizono2019-03-281-3/+3
|\ \ \ \ | | | | | | | | | | [ci skip] Fixed testing guides typo `fourty` -> `forty`
| * | | | [ci skip] Fixed testing guides typo `fourty` -> `forty`Shailesh Kalamkar2019-03-281-3/+3
|/ / / /
* | | | Merge pull request #35776 from ↵Rafael França2019-03-273-14/+41
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | owst/fix-range-comparisons-with-excluded-end-range Fix bug in Range comparisons when comparing to excluded-end Range
| * | | | Fix bug in Range comparisons when comparing to excluded-end RangeOwen Stephens2019-03-283-14/+41
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: ```ruby (1..10).cover?(1...11) => false ``` After: ```ruby (1..10).cover?(1...11) => true ``` See https://git.io/fjTtz for the commit against Ruby core that added support for Range arguments, with similar handling of this case.
* | | | Merge pull request #35775 from jhawthorn/remove_all_symbol_from_mime_allRafael França2019-03-272-1/+14
|\ \ \ \ | | | | | | | | | | Remove :all symbol from Mime::ALL
| * | | | Remove :all symbol from Mime::ALLJohn Hawthorn2019-03-272-1/+14
|/ / / / | | | | | | | | | | | | | | | | | | | | .all isn't a valid file extension, so it shouldn't used as a symbol. This also makes Mime::ALL better match how */* is parsed from an Accept header.
* | | | Merge pull request #35236 from renuo/fix-30467Rafael França2019-03-273-0/+29
|\ \ \ \ | | | | | | | | | | Prohibit sneaky custom params from being drawn (Fix #30467)
| * | | | Raise if resource custom params contain colonsJosua Schmid2019-03-263-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After this change it's not possible anymore to configure routes like this: routes.draw do resources :users, param: "name/:sneaky" end Fixes #30467.
* | | | | Merge pull request #35496 from bogdan/right-preloadingRyuta Kamizono2019-03-284-64/+99
|\ \ \ \ \ | |_|_|_|/ |/| | | | Fix preloader to never reset associations in case they are already loaded
| * | | | Fix preloader to never reset associations in case they are already loadedBogdan Gusiev2019-03-074-64/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the issue when association is preloaded with a custom preload scope which disposes the already preloaded target of the association by reseting it. When custom preload scope is used, the preloading is now performed into a separated Hash - #records_by_owner instead of the association. It removes the necessaty the reset the association after the preloading is complete so that reset of the preloaded association never happens. Preloading is still happening to the association when the preload scope is empty.
* | | | | Merge pull request #35556 from bdewater/fast-secure-compareMatthew Draper2019-03-281-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Stop encoding in secure_compare for speedup
| * | | | | Don't encode in secure_compare for speedupBart de Water2019-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Hex encoding is base 16 which makes the original input twice as big. With this change less time need to be spent in fixed_length_secure_compare.
* | | | | | Don't change `collation_connection` in the current connectionRyuta Kamizono2019-03-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have a test case for `collation_connection` session variable, so it should not be changed in any other test. Fixes #35458.
* | | | | | Merge pull request #35758 from Shigeyuki-fukuda/aligned_order_of_argumentRafael França2019-03-261-2/+2
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Aligned the order of the arguments of render_template and render_with_layout
| * | | | | Aligned the order of the arguments of render_template and render_with_layoutShigeyuki-fukuda2019-03-271-2/+2
| | | | | |
* | | | | | Schema version documentation (#35762)Ken Greeff2019-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update active_record_migrations.md * Change year to match others [Ken Greeff + Rafael Mendonça França]
* | | | | | Merge pull request #35761 from koic/bump_rubocop_to_0_66_0Ryuta Kamizono2019-03-273-13/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | Bump RuboCop to 0.66.0
| * | | | | | Bump RuboCop to 0.66.0Koichi ITO2019-03-273-13/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ### Summary RuboCop 0.66.0 has been released. https://github.com/rubocop-hq/rubocop/releases/tag/v0.66.0 And rubocop-0-66 channel is available in Code Climate. https://github.com/codeclimate/codeclimate/releases/tag/v0.84.0 RuboCop 0.66.0 fixed the false negative to indentation for modifier. And this PR applied the auto-correction fixed by it. https://github.com/rubocop-hq/rubocop/pull/6792 In addtion, this PR is also updating the following 4 gems that RuboCop depends on. - Update Psych gem ... https://github.com/rubocop-hq/rubocop/pull/6766 - Update Parser gem to 2.6.2.0 that supports Ruby 2.5.5 and 2.6.2 ... https://github.com/whitequark/parser/blob/v2.6.2.0/CHANGELOG.md#changelog - Remove powerpack gem ... https://github.com/rubocop-hq/rubocop/pull/6806 - Update unicode-display_width gem ... https://github.com/rubocop-hq/rubocop/pull/6813
* | | | | | | Merge pull request #35753 from Edouard-chin/ec-mimetype-rescueRafael França2019-03-265-3/+24
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Add the `Mime::Type::InvalidMimeType` error in the default rescue_response:
| * | | | | | | Add the `Mime::Type::InvalidMimeType` error in the default rescue_response:Edouard CHIN2019-03-265-3/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - https://github.com/rails/rails/pull/35604 introduced a vulnerability fix to raise an error in case the `HTTP_ACCEPT` headers contains malformated mime type. This will cause applications to throw a 500 if a User Agent sends an invalid header. This PR adds the `InvalidMimeType` in the default `rescue_responses` from the ExceptionWrapper and will return a 406. I looked up the HTTP/1.1 RFC and it doesn't stand what should be returned when the UA sends malformated mime type. Decided to get 406 as it seemed to be the status the better suited for this.
* | | | | | | | Merge pull request #35760 from jhawthorn/deprecate_custom_resolver_patternsRafael França2019-03-262-40/+15
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Deprecate custom patterns for PathResolver
| * | | | | | | | Deprecate custom patterns for PathResolverJohn Hawthorn2019-03-262-40/+15
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Custom glob patterns tie the implementation (Using Dir.glob) to the API we provide. It also doesn't really work. extract_handler_and_format_and_variant expects the handler, format, and variant to be at the end of the template path, and in the same order as they are in the default pattern. This deprecates specifying a custom path for FileSystemResolver and removes the pattern argument of OptimizedFileSystemResolver#initialize, which does not work with a custom pattern.
* | | | | | | | includes bootsnap 1.4.2-java in Gemfile.lockXavier Noria2019-03-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Was just pushed.
* | | | | | | | bumps Zeitwerk and BootsnapXavier Noria2019-03-265-13/+16
| | | | | | | |
* | | | | | | | Remove useless = [ci skip]Prathamesh Sonpatki2019-03-261-1/+1
| |_|/ / / / / |/| | | | | |
* | | | | | | Merge pull request #31442 from ebeigarts/weak_descendants_trackerMatthew Draper2019-03-273-4/+64
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | Use weak references in descendants tracker
| * | | | | | Use weak references in descendants trackerEdgars Beigarts2019-03-263-4/+64
| |/ / / / / | | | | | | | | | | | | | | | | | | It allows anonymous subclasses to be garbage collected.
* | | | | | Merge pull request #35756 from sergioro9/patch-1Xavier Noria2019-03-261-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | Grammar error
| * | | | | | Spelling errorSergio2019-03-261-1/+1
|/ / / / / /