aboutsummaryrefslogtreecommitdiffstats
path: root/railties
Commit message (Collapse)AuthorAgeFilesLines
* Convert `ENV["EDITOR"]` to string before checkyuuji.yaginuma2017-03-021-1/+1
| | | | | | In order to avoid `NoMethodError` when it is nil. Follow up to 82f7dc6178f86e5e2dd82f9e528475a6acee6cd8
* [ci skip] Add changelog entry for encrypted secrets.Kasper Timm Hansen2017-03-011-0/+14
| | | | Just dispatch to the command help itself for more info.
* Put it to me straight: just say it.Kasper Timm Hansen2017-03-011-3/+3
| | | | Prefer Thor's say method to Kernel's plain puts.
* Tell users how to assign a $EDITOR.Kasper Timm Hansen2017-03-012-0/+35
| | | | | | | | | | | | | | | In case there's no $EDITOR assigned users would see a cryptic: ``` % EDITOR= bin/rails secrets:edit Waiting for secrets file to be saved. Abort with Ctrl-C. sh: /var/folders/wd/xnncwqp96rj0v1y2nms64mq80000gn/T/secrets.yml.enc: Permission denied New secrets encrypted and saved. ``` That error is misleading, so give a hint in this easily detectable case. Fixes #28143.
* Merge pull request #28239 from ↵Kasper Timm Hansen2017-03-011-1/+1
|\ | | | | | | | | y-yagi/use_appropriate_type_for_test_framework_option Use appropriate type for `test_framework` option
| * Use appropriate type for `test_framework` optionyuuji.yaginuma2017-03-011-1/+1
| | | | | | | | | | | | | | | | This fixes the following warning. ``` Expected string default value for '--test-framework'; got false (boolean) ```
* | Merge pull request #28230 from y-yagi/HOST_to_be_in_uppercaseRafael França2017-02-281-1/+1
|\ \ | | | | | | `HOST` must be all capital letters
| * | `HOST` must be all capital lettersyuuji.yaginuma2017-03-011-1/+1
| |/ | | | | | | Ref: https://github.com/rails/rails/blob/master/railties/lib/rails/commands/server/server_command.rb#L194
* | Merge pull request #28120 from vfonic/plugin-generator-skip-turbolinks-dummyRafael França2017-02-281-0/+1
|\ \ | |/ |/| Allow skipping of turbolinks for test dummy application for plugin/engine
| * Skip turbolinks for engine test applicationViktor Fonic2017-02-281-0/+1
| | | | | | | | | | When `rails new plugin` is invoked, turbolinks should be skipped in the dummy test application generated by the plugin generator.
* | Fix http -> https [ci skip]kenta-s2017-02-281-1/+1
|/
* Use released webpacker in new applicationsyuuji.yaginuma2017-02-281-1/+1
| | | | Because webpacker 1.0 already released.
* Merge pull request #28196 from ↵Andrew White2017-02-272-3/+25
|\ | | | | | | | | y-yagi/set_correct_host_except_development_environment Set correct host except development environment
| * Set correct host except development environmentyuuji.yaginuma2017-02-272-3/+25
| | | | | | | | | | | | | | | | Currently `localhost` is used for the default host in all environments. But up to Rails 5.0, `0.0.0.0` is used except for development. So fixed to use the same value as 5.0. Fixes #28184
* | Merge pull request #28160 from ↵Eileen M. Uchitelle2017-02-271-2/+2
|\ \ | |/ |/| | | | | y-yagi/only_load_systemtestcase_if_puma_is_defined Only load SystemTestCase if Puma is defined
| * Only load SystemTestCase if Puma is definedyuuji.yaginuma2017-02-271-2/+2
| | | | | | | | | | | | | | | | SystemTestCase supports only Puma, and always load puma's file. https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/system_testing/server.rb#L1 For that reason, the case of use Capybara but do not use Puma, it will cause an error. So we need to check about Puma is defined as well.
* | Imporove docs for Rails::AppGenerator [ci skip]dixpac2017-02-251-0/+8
| | | | | | | | | | Add example so its easier to understand how one can overide an app generator.
* | Merge pull request #28137 from schneems/schneems/fix-default-puma-portRichard Schneeman2017-02-242-11/+52
|\ \ | |/ |/| [close #24435] Send user_supplied_options to server
| * [close #24435] Send user_supplied_options to serverschneems2017-02-242-11/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently when Puma gets a `:Port` it doesn't know if it is Rails' default port or if it is one that is specified by a user. Because of this it assumes that the port passed in is always a user defined port and therefor 3000 always "wins" even if you specify `port` inside of the `config/puma.rb` file when booting your server with `rails s`. The fix is to record the options that are explicitly passed in from the user and pass those to the Puma server (or all servers really). Puma then has enough information to know when `:Port` is the default and when it is user defined. I went ahead and did this for all values rails server exposes as server side options for completeness. The hardest thing was converting the input say `-p` or `--port` into the appropriate "name", in this case `Port`. There may be a more straightforward way to do this with Thor, but I'm not an expert here. Move logic for parsing user options to method Better variable name for iteration Explicitly test `--port` user input ✂️ Update array if environment variables are used
* | Merge pull request #28150 from ↵Rafael França2017-02-242-0/+10
|\ \ | | | | | | | | | | | | y-yagi/do_not_display_hidden_namespaces_in_generators_help does not show hidden namespaces in generator's help
| * | does not show hidden namespaces in generator's helpyuuji.yaginuma2017-02-242-0/+10
| | |
* | | Merge pull request #28062 from ↵Rafael França2017-02-242-1/+16
|\ \ \ | |/ / |/| | | | | | | | y-yagi/make_adding_gemfile_entry_work_even_if_specify_only_the_plugin_name Make adding gemfile entry work even if specify only the plugin name
| * | Make adding gemfile entry work even if specify only the plugin nameyuuji.yaginuma2017-02-242-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Whether the command was executed within the rails application is checked by whether or not the application's path matches `app_path`. https://github.com/rails/rails/blob/5-0-stable/railties/lib/rails/generators/rails/plugin/plugin_generator.rb#L439..L441 Therefore, if only plugin name is specified in `app_path`, addition to Gemfile is not done. However, in the rails guide an example of specifying only plugin name is given, and it is considered that there are many cases where only plugin name is specified. For that reason, made it work even if only plugin name was specified.
* | | Make help short-cut alias to workyuuji.yaginuma2017-02-242-1/+24
| | |
* | | Make version short-cut alias to workyuuji.yaginuma2017-02-242-1/+25
| | |
* | | Preparing for 5.1.0.beta1 releaseRafael Mendonça França2017-02-232-1/+3
| | |
* | | Fix Rakefile loading generator relativelyRafael Mendonça França2017-02-231-1/+1
| | |
* | | Use double quotes in the generated plugin test script.Kasper Timm Hansen2017-02-231-3/+3
| | |
* | | Merge pull request #28105 from y-yagi/add_wrapper_for_plugins_test_runnerKasper Timm Hansen2017-02-232-7/+8
|\ \ \ | |_|/ |/| | Add wrapper for plugin's test runner
| * | Add wrapper for plugin's test runneryuuji.yaginuma2017-02-222-7/+8
| | | | | | | | | | | | | | | | | | | | | Currently, private API is directly used in `bin/test`. It is necessary to change `bin/test` when changing private API. To avoid this, provide a wrapper file and modify `bin/test` to just require that file.
* | | Yank the intricate immediately-exiting editor recognition.Kasper Timm Hansen2017-02-231-16/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most editors support a wait flag of some kind which prevents their process from exiting until the file or window is closed. Prefer people to assign that themselves than us mucking around with File mtimes or other such things. Example of an editor config: ``` export EDITOR="atom --wait" ```
* | | Add back tests for test:units and test:functionals.Kasper Timm Hansen2017-02-231-12/+16
| | | | | | | | | | | | | | | | | | | | | Would have caught that the invoke changes broke rake delegation behavior. And we do ship the behavior so we should test it.
* | | Fix test:units not hitting rake task.Kasper Timm Hansen2017-02-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | By splitting the namespace test:units on :, we'd find our TestCommand, which knew nothing of a units method. So check that a found command also includes the command name we're trying to call.
* | | Revert "Revert "Add encrypted secrets""Kasper Timm Hansen2017-02-2317-27/+482
| | |
* | | Revert "Add encrypted secrets" (#28127)David Heinemeier Hansson2017-02-2317-482/+27
| | |
* | | Add encrypted secrets (#28038)Kasper Timm Hansen2017-02-2317-27/+482
| | |
* | | Merge pull request #27572 from matthewd/prerelease-specifierMatthew Draper2017-02-232-10/+9
|\ \ \ | |/ / |/| | Simplify the version specifier generated by prereleases
| * | Simplify the version specifier generated by prereleasesMatthew Draper2017-01-052-10/+9
| | | | | | | | | | | | | | | "~> 1.2.3.pre4" will automatically allow "1.2.4" -- no need for an explicit range.
* | | Merge pull request #23138 from rails/custom-url-helpers-and-polymorphic-urlsAndrew White2017-02-211-2/+185
|\ \ \ | | | | | | | | Implement custom url helpers and polymorphic mapping
| * | | Split direct method into twoAndrew White2017-02-211-4/+4
| | | | | | | | | | | | | | | | | | | | Use a separate method called `resolve` for the custom polymorphic mapping to clarify the API.
| * | | Prefer remove_method over undef_methodAndrew White2017-02-211-0/+58
| | | | | | | | | | | | | | | | | | | | | | | | Using `undef_method` means that when a route is removed any other implementations of that method in the ancestor chain are inaccessible so instead use `remove_method` which restores access to the ancestor.
| * | | Add custom polymorphic mappingAndrew White2017-02-211-4/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow the use of `direct` to specify custom mappings for polymorphic_url, e.g: resource :basket direct(class: "Basket") { [:basket] } This will then generate the following: >> link_to "Basket", @basket => <a href="/basket">Basket</a> More importantly it will generate the correct url when used with `form_for`. Fixes #1769.
| * | | Rename url_helper to directAndrew White2017-02-211-4/+4
| | | |
| * | | Add support for defining custom url helpers in routes.rbAndrew White2017-02-211-2/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow the definition of custom url helpers that will be available automatically wherever standard url helpers are available. The current solution is to create helper methods in ApplicationHelper or some other helper module and this isn't a great solution since the url helper module can be called directly or included in another class which doesn't include the normal helper modules. Reference #22512.
* | | | Use released arelRafael Mendonça França2017-02-211-1/+0
| | | |
* | | | Revert back to the original of using package.json in the root of the project ↵David Heinemeier Hansson2017-02-217-13/+13
| | | | | | | | | | | | | | | | (#28093)
* | | | Only load SystemTestCase if Capybara is definedeileencodes2017-02-211-5/+10
|/ / / | | | | | | | | | | | | | | | | | | | | | For applications that are upgrading or applications that are choosing to skip system testing Capbyara will not be available. SystemTestCase and friends shoud only be loaded if Capbyara is defined. Fixes #28094
* | | Merge pull request #28088 from y-yagi/do_not_generate_templates_to_api_docGuillermo Iguaran2017-02-211-1/+1
|\ \ \ | | | | | | | | Do not display template files on API doc [ci skip]
| * | | Do not display template files on API doc [ci skip]yuuji.yaginuma2017-02-211-1/+1
| | | |
* | | | Fix run_via[]= backwards compatibility.Kasper Timm Hansen2017-02-212-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` Minitest.run_via[:rails] = true ``` 👆 would break because a simple alias won't catch the second true argument there.