aboutsummaryrefslogtreecommitdiffstats
path: root/railties
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | Add the ability of returning arbitrary headers to ActionDispatch::StaticYuki Nishijima2015-06-135-6/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now ActionDispatch::Static can accept HTTP headers so that developers will have control of returning arbitrary headers like 'Access-Control-Allow-Origin' when a response is delivered. They can be configured through `#config.public_file_server.headers`: config.public_file_server.headers = { "Cache-Control" => "public, max-age=60", "Access-Control-Allow-Origin" => "http://rubyonrails.org" } Also deprecate `config.static_cache_control` in favor of `config.public_file_server.headers`.
* | | | Merge pull request #17388 from akampjes/masterArthur Nogueira Neves2015-10-121-0/+11
|\ \ \ \ | | | | | | | | | | ActionMailer https on URL with force_ssl = true
| * | | | ActionMailer https on URL with force_ssl = trueAndrew Kampjes2015-08-141-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `config.force_ssl = true` will set config.action_mailer.default_url_options = { protocol: 'https' } If you have turned on force_ssl, and then gone to the effort of setting config.action_mailer.default_url_options = {host: 'example.com'} then you are probably pointing people back to your current app and want https on that too.
* | | | | do not generate manifest.js in pluginsyuuji.yaginuma2015-10-122-1/+2
| | | | | | | | | | | | | | | | | | | | Since the plugin generator do not generate assets, I think manifest.js also that it unnecessary.
* | | | | Merge pull request #21912 from y-yagi/move_prepare_destination_to_publicSean Griffin2015-10-081-1/+2
|\ \ \ \ \ | | | | | | | | | | | | change `prepare_destination` to public API [ci skip]
| * | | | | change `prepare_destination` to public API [ci skip]yuuji.yaginuma2015-10-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `prepare_destination` has been used in the template file for the generator, I think it should be a public API ref: https://github.com/rails/rails/blob/master/railties/lib/rails/generators/test_unit/generator/templates/generator_test.rb#L8
* | | | | | remove unused requireyuuji.yaginuma2015-10-081-2/+0
|/ / / / / | | | | | | | | | | | | | | | `shellwords` is no longer needed from #20605.
* | | | | Merge pull request #21804 from merhard/mounted_engine_route_fixAndrew White2015-10-071-0/+49
|\ \ \ \ \ | | | | | | | | | | | | Mounted engine route fix
| * | | | | Fix mounted engine named routes regressionMatthew Erhard2015-10-071-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When generating the url for a mounted engine through its proxy, the path should be the sum of three parts: 1. Any `SCRIPT_NAME` request header or the value of `ActionDispatch::Routing::RouteSet#relative_url_root`. 2. A prefix (the engine's mounted path). 3. The path of the named route inside the engine. Since commit https://github.com/rails/rails/commit/44ff0313c121f528a68b3bd21d6c7a96f313e3d3, this has been broken. Step 2 has been changed to: 2. A prefix (the value of `ActionDispatch::Routing::RouteSet#relative_url_root` + the engine's mounted path). The value of `ActionDispatch::Routing::RouteSet#relative_url_root` is taken into account in step 1 of the route generation and should be ignored when generating the mounted engine's prefix in step 2. This commit fixes the regression by having `ActionDispatch::Routing::RouteSet#url_for` check `options[:relative_url_root]` before falling back to `ActionDispatch::Routing::RouteSet#relative_url_root`. The prefix generating code then sets `options[:relative_url_root]` to an empty string. This empty string is used instead of `ActionDispatch::Routing::RouteSet#relative_url_root` and avoids the duplicate `relative_url_root` value in the final result. This resolves #20920 and resolves #21459
* | | | | | Output inline is set to true in the plugin.Kasper Timm Hansen2015-10-072-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the reporter to just read the option. Pass output_inline where needed in tests.
* | | | | | Refactor create_test_file to take a pass option.Kasper Timm Hansen2015-10-071-31/+7
| | | | | | | | | | | | | | | | | | | | | | | | Lets us cut the verbose and straight up duplicated setup in 3 tests down to one line.
* | | | | | Hide Minitest's aggregated results if outputting inline.Kasper Timm Hansen2015-10-072-0/+29
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We'd see the failures and errors reported after the run, which is needless, when we've already reported them. Turns: ``` .......................................S....................F This failed bin/rails test test/models/bunny_test.rb:14 .... Finished in 0.100886s, 1020.9583 runs/s, 1001.1338 assertions/s. 2) Failure: BunnyTest#test_something_failing [/Users/kasperhansen/Documents/code/collection_caching_test/test/models/bunny_test.rb:15]: This failed 103 runs, 101 assertions, 1 failures, 0 errors, 1 skips You have skipped tests. Run with --verbose for details. ``` Into: ``` ...................S.......................................F This failed bin/rails test test/models/bunny_test.rb:14 ...................... Finished in 0.069910s, 1473.3225 runs/s, 1444.7143 assertions/s. 103 runs, 101 assertions, 1 failures, 0 errors, 1 skips ```
* | | | | Update the URL when changing mailer preview formatsJames Kerr2015-10-062-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added javascript to update the URL on mailer previews with the currently selected email format. Reloading the page now keeps you on your selected format rather than going back to the default html version.
* | | | | Use `Mime[:foo]` instead of `Mime::Type[:FOO]` for back compatJeremy Daer2015-10-062-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rails 4.x and earlier didn't support `Mime::Type[:FOO]`, so libraries that support multiple Rails versions would've had to feature-detect whether to use `Mime::Type[:FOO]` or `Mime::FOO`. `Mime[:foo]` has been around for ages to look up registered MIME types by symbol / extension, though, so libraries and plugins can safely switch to that without breaking backward- or forward-compatibility. Note: `Mime::ALL` isn't a real MIME type and isn't registered for lookup by type or extension, so it's not available as `Mime[:all]`. We use it internally as a wildcard for `respond_to` negotiation. If you use this internal constant, continue to reference it with `Mime::ALL`. Ref. efc6dd550ee49e7e443f9d72785caa0f240def53
* | | | | Merge pull request #20986 from radar/rails-engine-caller-locationsArthur Nogueira Neves2015-10-041-6/+1
|\ \ \ \ \ | | | | | | | | | | | | Remove check for caller_locations in Rails::Engine
| * | | | | Remove check for caller_locations in Rails::EngineRyan Bigg2015-07-231-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | This is no longer necessary, as the minimum version requirement for Ruby is 2.2.2, and the `caller_locations` feature was added in Ruby 2.0.0. Since Rails no longer supports pre 2.0 versions of Ruby, there is no need to check first if the Kernel does respond to `caller_locations`. The answer is: yes it does.
* | | | | | Merge branch 'master' of github.com:rails/docrailsVijay Dev2015-10-042-3/+3
|\ \ \ \ \ \
| * | | | | | Renamed ‘Return’ to ‘Returns’ [ci skip]Ronak Jangir2015-09-282-3/+3
| | | | | | |
* | | | | | | Revert "removing Rack::Runtime from the default stack."Aaron Patterson2015-10-034-13/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 37423e4ff883ad5584bab983aceb4b2b759a1fd8. Jeremy is right that we shouldn't remove this. The fact is that many engines are depending on this middleware to be in the default stack. This ties our hands and forces us to keep the middleware in the stack so that engines will work. To be extremely clear, I think this is another smell of "the rack stack" that we have in place. When manipulating middleware, we should have meaningful names for places in the req / res lifecycle **not** have engines depend on a particular constant be in a particular place in the stack. This is a weakness of the API that we have to figure out a way to address before removing the constant. As far as timing attacks are concerned, we can reduce the granularity such that it isn't useful information for hackers, but is still useful for developers.
* | | | | | | Merge pull request #21851 from y-yagi/use_class_to_specify_middlewareKasper Timm Hansen2015-10-031-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | use class to specify the middleware [ci skip]
| * | | | | | | use class to specify the middleware [ci skip]yuuji.yaginuma2015-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | using string for middleware class names is deprecated in 83b767cef90abfc4c2ee9f4b451b0215501fae9a
* | | | | | | | removing Rack::Runtime from the default stack.Aaron Patterson2015-10-024-13/+13
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The runtime header is a potential target for timing attacks since it returns the amount of time spent on the server (eliminating network speed). Total time is also not accurate for streaming responses. The middleware can be added back via: ```ruby config.middleware.ues ::Rack::Runtime ```
* | | | | | | Refactor AS::Callbacks halt config and fix the documentationRoque Pinel2015-10-011-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move from `AS::Callbacks::CallbackChain.halt_and_display_warning_on_return_false` to `AS::Callbacks.halt_and_display_warning_on_return_false` base on [this discussion](https://github.com/rails/rails/pull/21218#discussion_r39354580) Fix the documentation broken by 0a120a818d413c64ff9867125f0b03788fc306f8
* | | | | | | only construct one request in an engineAaron Patterson2015-09-302-14/+17
| | | | | | |
* | | | | | | run against edge sass to eliminate circular require warningsAaron Patterson2015-09-301-4/+0
| | | | | | |
* | | | | | | call `default_middleware_stack` before merging stacksAaron Patterson2015-09-291-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `default_middleware_stack` seems to kick off the `on_load` calls that may mutate the middleware stack. We have to call that method before merging middleware stacks, otherwise the middleware stacks get mutated *after* the app middleware stack is built.
* | | | | | | Engines get different middleware than appsAaron Patterson2015-09-293-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We shouldn't merge the app middleware in to the config middleware for engines.
* | | | | | | Merge pull request #21794 from ↵Jeremy Daer2015-09-299-184/+245
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | jeremy/sprockets/move-asset-manifest-from-toplevel-to-config-subdir Eliminate overlapping `app/assets` load path
| * | | | | | | Eliminate overlapping `app/assets` load pathJeremy Daer2015-09-299-184/+245
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Move `app/assets/manifest.js` to `app/assets/config/manifest.js`. Avoid the suggestion that you can/should deep-link `stylesheets/foo`. * Pull in all toplevel stylesheets and JavaScripts, not just `application.js` and `.css`. Demonstrate how to use `link_directory` with a specified `.js`/`.css` type. * Fix RAILS_ENV handling in assets tests. * Shush warnings spam from third-party libs that distract from tests.
* | | | | | | | Make app building threadsafeeileencodes2015-09-291-4/+8
| | | | | | | |
* | | | | | | | Stop modifying global variableseileencodes2015-09-293-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allocating a new middleware proxy in each application configuration and then merging the app specific config with the global config when the app is built.
* | | | | | | | Add fail fast to test runner.Kasper Timm Hansen2015-09-295-0/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing `--fail-fast` to the test runner will now abort the test run on the first failure. The run continues on any unexpected errors.
* | | | | | | | Add inline failure reporting to test runner.Kasper Timm Hansen2015-09-285-6/+113
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Any failures or errors will be reported inline during the run by default. Skipped tests will be reported if run in verbose mode. Any result is output with failure messages and a rerun snippet for that test. Rerun snippets won't be output after a run, unless `--defer-output` is passed.
* | | | | | | Merge pull request #21789 from y-yagi/fix_warning_in_minitest_pluginKasper Timm Hansen2015-09-281-1/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | check if @rake_patterns is defined
| * | | | | | | check if @rake_patterns is definedyuuji.yaginuma2015-09-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes the following warning. ``` railties/lib/rails/test_unit/minitest_plugin.rb:45: warning: instance variable @rake_patterns not initialize ```
* | | | | | | | Fix test that was failing because of typoeileencodes2015-09-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Here `app` needed to be `get` because we're getting a route. This fixes the typo so the test passes.
* | | | | | | | Add missing routing tests for info controllerAditya Kapoor2015-09-271-0/+12
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Vaguely related to #21605 where I proposed to remove index route since it was redirecting to the 'routes' action, but this was kept so I thought it made sense to add some tests regarding this.
* | | | | | | Fix typo in configuration test descritive > descriptive [ci skip]amitkumarsuroliya2015-09-261-1/+1
| | | | | | |
* | | | | | | make sure flash middleware is requiredAaron Patterson2015-09-251-0/+1
| | | | | | |
* | | | | | | Removed Mocha from app generators testsRonak Jangir2015-09-231-87/+106
| | | | | | |
* | | | | | | stop using deprecated method in mailers controlleryuuji.yaginuma2015-09-232-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Accessing mime types via constants is deprecated.
* | | | | | | Remove unneeded generator variable.Kasper Timm Hansen2015-09-221-1/+0
| | | | | | |
* | | | | | | Removed mocha from Railites PluginGeneratorTestRonak Jangir2015-09-222-15/+35
| | | | | | |
* | | | | | | fix application_controller require_dependency path generated by the scaffold ↵yuuji.yaginuma2015-09-202-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | generator This is follow up to #6643. In #6643, the controller generator only had been fixed, in this commit to fix the scaffold generator.
* | | | | | | mostly remove the ParamsParser middlewareAaron Patterson2015-09-182-3/+0
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | This can still be added to the middleware stack, but is really not necessary. I'll follow up with a commit that deprecates the constant
* | | | | | File encoding is defaulted to utf-8 in Ruby >= 2.1Akira Matsuda2015-09-181-1/+0
| | | | | |
* | | | | | Fix displaying mailer previews on non local requests.Wojciech Wnętrzak2015-09-173-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When config `action_mailer.show_previews` is set, previews are displayed regardless of local request check.
* | | | | | Bundler tzinfo-data in windows, even first generated new app are MacEric Guo2015-09-151-2/+0
| | | | | |
* | | | | | Merge pull request #21568 from amitsuroliya/mysql_version_updateRafael Mendonça França2015-09-132-2/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | Updated MySQL documentation link to MySQL latest version 5.7 everywhe…
| * | | | | | Updated MySQL documentation link to MySQL latest version 5.7 everywhere [ci ↵amitkumarsuroliya2015-09-102-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | skip] Bumps from `5.6` to `5.7`