Versione Wapt 1.5
Ho provato a usare `setuphelper ensure_dir` in un pacchetto e ho riscontrato un malfunzionamento:
In effetti, il comando `ensure_dir('C:\Programmes\Ape')` non ha funzionato. L'ho testato in una console Python con tutte le combinazioni possibili (mettendo "r" prima di 'C:\Programmes...', usando `Programmes` invece di `Programmes`...), ma non ha funzionato nulla.
Quindi ho esaminato il codice della funzione e ho eseguito alcuni test direttamente in Python:
(ovviamente la directory C:\Programmi non esiste)
Codice: Seleziona tutto
>>> ## 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
Nel test 2, vediamo che se d viene dichiarato come stringa e il percorso non esiste, otteniamo effettivamente False.
Nel test 3, vediamo che, d'altro canto, se il percorso esiste quando d è dichiarato come stringa, otteniamo un valore True.
Mi sembra, quindi, che in ensure_dir(), piuttosto che usare
Codice: Seleziona tutto
d = os.path.dirname(filename)
Codice: Seleziona tutto
d = filename
Codice: Seleziona tutto
d = str(filename)
E. Trezel
