Default to using spring when running commands and tasks with bin/rails #733
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When you run a rake task with
bin/rails
it does not use spring (except db rake tasks). And, many rails commands that could benefit from using spring do not use it, since the current system is for commands to opt-in.I believe that it would be better to have an opt-out system rather than an opt-in system, since likely most commands and tasks will benefit from spring. So I implemented that in this PR.
While here I simplified the existing Rails sub-commands implementation, which had varying ways of picking off the environment from the args. I believe we only need one special subcommand,
test
because it needs to default to thetest
environment, unlike the others.I opted out the
server
command because it should not run with spring. Are there any other commands that should opt-out?