Python-future: `futurize ** / *. py` não funciona em repositórios profundamente aninhados com bash ou zsh

Criado em 10 out. 2015  ·  1Comentário  ·  Fonte: PythonCharmers/python-future

Estou tentando usar futurize https://github.com/suchow/Dissertate do diretório raiz do repo e ele retorna

$ futurize --stage1 **/*.py
RefactoringTool: Skipping implicit fixer: idioms
RefactoringTool: Skipping implicit fixer: ws_comma
RefactoringTool: No files need to be modified.

Eu sei que há declarações de impressão incorreta (apenas python2 ) dentro de assets/schools/Generic/generic.py (especificamente print "" em https://github.com/suchow/Dissertate/blob/master/assets/ escolas / Generic / generic.py # L11). Eu poderia consertá-lo manualmente, mas na verdade estava usando isso como um teste para ter certeza de que futurize poderia alcançar arbitrariamente profundamente na estrutura do arquivo que não é em sua maioria arquivos python, mas eventualmente tem arquivos python.

Estou usando bash como meu shell e tentei zsh $(futurize --stage1 **/*.py) também, e ambos retornaram que nenhum arquivo precisa ser modificado.

Se eu cd assets/schools/ então funciona:

futurize --stage1 **/*.py
RefactoringTool: Skipping implicit fixer: idioms
RefactoringTool: Skipping implicit fixer: ws_comma
RefactoringTool: Refactored Generic/generic.py
--- Generic/generic.py  (original)
+++ Generic/generic.py  (refactored)
@@ -1,4 +1,5 @@
 #!/usr/bin/env python
+from __future__ import print_function
 from docx import Document


@@ -8,7 +9,7 @@
         self.document = Document('../assets/word-base/dissertate.docx')

     def fill(self):
-        print ""
+        print("")

     def save(self):
         self.document.save('dissertation.docx')
RefactoringTool: Files that need to be modified:
RefactoringTool: Generic/generic.py

Portanto, deve ser algo relacionado à busca recursiva.

0.18 docs

Comentários muito úteis

Atualização: futurize --stage1 . funciona a partir do diretório raiz. Talvez isso deva ser alterado na documentação? Fico feliz em fazer isso, mas parece estranho que este não seja o método padrão recomendado (ao contrário de futurize --stage1 **/*.py ... o que me faz pensar que não foi incluído nos documentos por um motivo, embora eu não consiga entender o que aquilo foi.

>Todos os comentários

Atualização: futurize --stage1 . funciona a partir do diretório raiz. Talvez isso deva ser alterado na documentação? Fico feliz em fazer isso, mas parece estranho que este não seja o método padrão recomendado (ao contrário de futurize --stage1 **/*.py ... o que me faz pensar que não foi incluído nos documentos por um motivo, embora eu não consiga entender o que aquilo foi.

Esta página foi útil?
0 / 5 - 0 avaliações