diff options
author | Aleksey Ivanov <ialexxei@gmail.com> | 2016-08-13 21:47:43 +0300 |
---|---|---|
committer | Marc Cornellà <marc.cornella@live.com> | 2016-08-13 20:47:43 +0200 |
commit | 51c10783e1f09d72dfd0d8d4b6301974919ed0e4 (patch) | |
tree | d8325be4ac76acee8954751fa4b4f007009e0daf | |
parent | 906a7731af7499a9e5fa8795f0427180904d9122 (diff) | |
download | zsh-51c10783e1f09d72dfd0d8d4b6301974919ed0e4.tar.gz zsh-51c10783e1f09d72dfd0d8d4b6301974919ed0e4.tar.bz2 zsh-51c10783e1f09d72dfd0d8d4b6301974919ed0e4.zip |
refresh .rake_tasks when lib/tasks changed (#5111)
-rw-r--r-- | plugins/rake-fast/rake-fast.plugin.zsh | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/plugins/rake-fast/rake-fast.plugin.zsh b/plugins/rake-fast/rake-fast.plugin.zsh index d305eb1f0..57d699abc 100644 --- a/plugins/rake-fast/rake-fast.plugin.zsh +++ b/plugins/rake-fast/rake-fast.plugin.zsh @@ -8,7 +8,19 @@ _rake_refresh () { } _rake_does_task_list_need_generating () { - [[ ! -f .rake_tasks ]] || [[ Rakefile -nt .rake_tasks ]] + [[ ! -f .rake_tasks ]] || [[ Rakefile -nt .rake_tasks ]] || (_is_rails_app && _tasks_changed) +} + +_is_rails_app () { + [[ -e "bin/rails" ]] || [ -e "script/rails" ] +} + +_tasks_changed () { + local is_changed=1 + for file in lib/tasks/**/*.rake; do + if [[ $file -nt .rake_tasks ]]; then is_changed=0; fi + done + return is_changed } _rake_generate () { |