(venv) C:\Users\IEUser\astpretty>virtualenv v -vvv --with-traceback
390 setup logging to NOTSET [DEBUG report:43]
468 could not create app data folder C:\Users\IEUser\AppData\Local\pypa\virtualenv due to FileNotFoundError(2, 'The system cannot find the path specified') [INFO app_data:54]
577 created temporary app data folder C:\Users\IEUser\AppData\Local\Temp\tmpaqvhomd3 [DEBUG app_data:32]
624 find interpreter for spec PythonSpec(path=c:\users\ieuser\astpretty\venv\scripts\python.exe) [INFO builtin:44]
Traceback (most recent call last):
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\IEUser\astpretty\venv\Scripts\virtualenv.exe\__main__.py", line 9, in <module>
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\__main__.py", line 50, in run_with_catch
run(args, options)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\__main__.py", line 20, in run
session = cli_run(args, options)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\run\__init__.py", line 27, in cli_run
session = session_via_cli(args, options)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\run\__init__.py", line 35, in session_via_cli
parser = build_parser(args, options)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\run\__init__.py", line 71, in build_parser
parser._interpreter = interpreter = discover.interpreter
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\discover.py", line 44, in interpreter
self._interpreter = self.run()
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\builtin.py", line 33, in run
return get_interpreter(self.python_spec, self.app_data.folder)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\builtin.py", line 46, in get_interpreter
for interpreter, impl_must_match in propose_interpreters(spec, app_data):
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\builtin.py", line 60, in propose_interpreters
yield PythonInfo.from_exe(spec.path, app_data), True
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\py_info.py", line 293, in from_exe
proposed = proposed._resolve_to_system(app_data, proposed)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\py_info.py", line 328, in _resolve_to_system
target = cls.from_exe(target.system_executable, app_data)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\py_info.py", line 290, in from_exe
proposed = from_exe(cls, app_data, exe, raise_on_error=raise_on_error, ignore_cache=ignore_cache)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\cached_py_info.py", line 32, in from_exe
result = _get_from_cache(cls, py_info_cache, app_data, exe, ignore_cache=ignore_cache)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\cached_py_info.py", line 56, in _get_from_cache
py_info = _get_via_file_cache(cls, py_info_cache, app_data, exe_path, exe)
File "c:\users\ieuser\astpretty\venv\lib\site-packages\virtualenv\discovery\cached_py_info.py", line 68, in _get_via_file_cache
resolved_path_modified_timestamp = resolved_path.stat().st_mtime
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\pathlib.py", line 1178, in stat
return self._accessor.stat(self)
OSError: [WinError 1920] The file cannot be accessed by the system: 'C:\\Users\\IEUser\\AppData\\Local\\Microsoft\\WindowsApps\\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\\python.exe'
J'utilise le Windows Store python 3.7.6 sur Windows 10
(venv) C:\Users\IEUser\astpretty>python --version --version
Python 3.7.6 (tags/v3.7.6:43364a7ae0, Dec 19 2019, 01:54:44) [MSC v.1916 64 bit (AMD64)]
notez également que je ne pouvais pas exécuter --help
pour afficher les options sans toucher l'erreur :S
@asottile, malheureusement, il n'est pas possible de mettre la main sur Windows Store python en CI. Je vais jeter un œil, ça a fonctionné juste après cette RP. On dirait que cette résolution a brisé le monde ici...
Le coupable semble donc ici :
PS C:\Users\traveler\git\virtualenv> python -c 'import sys; from pathlib import Path; import os; print(sys.executable); print(os.path.exists(sys.executable)); print(Path(sys.executable).exists())'
C:\Users\traveler\AppData\Local\Microsoft\WindowsApps\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\python.exe
False
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\pathlib.py", line 1356, in exists
self.stat()
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.7_3.7.1776.0_x64__qbz5n2kfra8p0\lib\pathlib.py", line 1178, in stat
return self._accessor.stat(self)
OSError: [WinError 1920] The file cannot be accessed by the system: 'C:\\Users\\traveler\\AppData\\Local\\Microsoft\\WindowsApps\\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\\python.exe'
Nous n'avons donc pas assez de droits pour vérifier l'existence du chemin, mais nous pouvons l'exécuter. pathlib
lève une exception, os.path.exists
renvoie juste un False
silencieux.
cc @zooba Je m'attends à ce que cela fonctionne comme prévu ?
C'est corrigé dans la version 3.8, où nous avons réécrit stat()
sur Windows pour gérer les points d'analyse impossibles à suivre et illisibles (qui n'avaient jamais vraiment existé auparavant), ainsi qu'un certain nombre d'autres cas extrêmes.
os.lstat()
sur Python 3.7 fonctionne, donc s'il y a un moyen pour vous de l'utiliser à la place, allez-y. Sinon, n'hésitez pas à déclarer Python 3.7 du Store comme hors champ/non pris en charge - c'est pourquoi nous y avons apposé le marquage "expérimental".
Je suis donc tenté de laisser tomber store python 3.7 dans ce cas. Cependant, un autre problème que j'ai rencontré est que la méthode store python --symlinks
crée un environnement virtuel qui ne peut pas être exécuté; et n'échoue qu'après la création, pas pendant.
Bonjour, un correctif pour ce problème a été publié via virtualenv 20.0.11 ; voir https://pypi.org/project/virtualenv/20.0.11/ (https://virtualenv.pypa.io/en/latest/changelog.html#v20-0-11-2020-03-18). Veuillez essayer et signaler si votre problème n'a pas été résolu ; sinon, veuillez commenter ici, et nous rouvrirons le ticket. Nous tenons à nous excuser pour le désagrément que cela vous a causé et vous remercions de votre patience pendant que nous résolvons les bogues inattendus avec cette nouvelle version majeure.
Commentaire le plus utile
@asottile, malheureusement, il n'est pas possible de mettre la main sur Windows Store python en CI. Je vais jeter un œil, ça a fonctionné juste après cette RP. On dirait que cette résolution a brisé le monde ici...