Versión 1.5 de Wapt
Intenté usar `setuphelper ensure_dir` en un paquete y encontré un mal funcionamiento:
De hecho, el comando `ensure_dir('C:\Programmes\Ape')` no funcionó. Lo probé en una consola de Python con todas las combinaciones posibles (antes de 'C:\Programmes...', usando `Programmes` en lugar de `Programmes`...) y nada funcionó.
Entonces, miré el código de la función y ejecuté algunas pruebas directamente en Python:
(por supuesto el directorio C:\Archivos de programa no existe)
Código: Seleccionar todo
>>> ## Test 1 :
>>> d=path.dirname('C:\program rrr')
>>> d
'C:\\'
>>> path.isdir(d)
True
>>> ## Test 2 :
>>> d="C:\Program rrr"
>>> d
'C:\\Program rrr'
>>> path.isdir(d)
False
>>> ##Test 3 :
>>> d="C:\Program Files"
>>> d
'C:\\Program Files'
>>> path.isdir(d)
True
En la prueba 2, vemos que si d se declara como una cadena y la ruta no existe, efectivamente obtenemos Falso.
En la prueba 3, vemos que, por otro lado, si la ruta existe cuando d se declara como una cadena, obtenemos un Verdadero.
Por lo tanto, me parece que en ensure_dir(), en lugar de utilizar
Código: Seleccionar todo
d = os.path.dirname(filename)
Código: Seleccionar todo
d = filename
Código: Seleccionar todo
d = str(filename)
E. Trezel
