Browse Source

python: fix and extend pyclean (#7762)

Deleting `.mypy_cache` did not work, because the directories were not
empty.  They contain JSON files instead of compiled byte-code.

This extends the cleanup by also getting rid of `.pytest_cache`
directories.
Michael 5 years ago
parent
commit
9785d24172
1 changed files with 4 additions and 3 deletions
  1. 4 3
      plugins/python/python.plugin.zsh

+ 4 - 3
plugins/python/python.plugin.zsh

@@ -1,13 +1,14 @@
 # Find python file
 # Find python file
 alias pyfind='find . -name "*.py"'
 alias pyfind='find . -name "*.py"'
 
 
-# Remove python compiled byte-code and mypy cache in either current directory or in a
-# list of specified directories
+# Remove python compiled byte-code and mypy/pytest cache in either the current
+# directory or in a list of specified directories (including sub directories).
 function pyclean() {
 function pyclean() {
     ZSH_PYCLEAN_PLACES=${*:-'.'}
     ZSH_PYCLEAN_PLACES=${*:-'.'}
     find ${ZSH_PYCLEAN_PLACES} -type f -name "*.py[co]" -delete
     find ${ZSH_PYCLEAN_PLACES} -type f -name "*.py[co]" -delete
     find ${ZSH_PYCLEAN_PLACES} -type d -name "__pycache__" -delete
     find ${ZSH_PYCLEAN_PLACES} -type d -name "__pycache__" -delete
-    find ${ZSH_PYCLEAN_PLACES} -type d -name ".mypy_cache" -delete
+    find ${ZSH_PYCLEAN_PLACES} -depth -type d -name ".mypy_cache" -exec rm -r "{}" +
+    find ${ZSH_PYCLEAN_PLACES} -depth -type d -name ".pytest_cache" -exec rm -r "{}" +
 }
 }
 
 
 # Grep among .py files
 # Grep among .py files