Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add python failed when utf-8 character included in project path on Windows #930

Closed
2 tasks done
IncubatorShokuhou opened this issue Mar 7, 2024 · 4 comments
Closed
2 tasks done
Labels
🐞 bug Something isn't working

Comments

@IncubatorShokuhou
Copy link

Checks

  • I have checked that this issue has not already been reported.

  • I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example

Issue description

When I attempted to initialize a Pixi project on a Windows path containing Chinese characters and tried to run 'pixi add python', the following error occurred:

 × Failed to run activation script for Default. Status: exit code: 255. Stdout: 123pan=D:\Program
  │ Files\123pan\123pan.exe
  │ AGSDESKTOPJAVA=D:\Program Files (x86)\ArcGIS\Desktop10.8\
  │ ALLUSERSPROFILE=C:\ProgramData
  │ APPDATA=C:\Users\dell\AppData\Roaming
  │ ChocolateyInstall=C:\ProgramData\chocolatey
  │ ChocolateyLastPathUpdate=133500219879418365
  │ CLINK_DIR=C:\Program Files (x86)\clink
  │ CommonProgramFiles=C:\Program Files\Common Files
  │ CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
  │ CommonProgramW6432=C:\Program Files\Common Files
  │ COMPUTERNAME=DESKTOP-T5MQ1IA
  │ ComSpec=C:\WINDOWS\system32\cmd.exe
  │ CONDA_DEFAULT_ENV=base
  │ CONDA_EXE=D:\miniconda_win\Scripts\conda.exe
  │ CONDA_PREFIX=D:\miniconda_win
  │ CONDA_PROMPT_MODIFIER=(base)
  │ CONDA_PYTHON_EXE=D:\miniconda_win\python.exe
  │ CONDA_SHLVL=1
  │ DriverData=C:\Windows\System32\Drivers\DriverData
  │ GCC_HOME=C:\MinGW
  │ GDAL_DATA=D:\miniconda_win\Library\share\gdal
  │ GDAL_DRIVER_PATH=D:\miniconda_win\Library\lib\gdalplugins
  │ GEOS_DIR=C:\geos
  │ HOMEDRIVE=C:
  │ HOMEPATH=\Users\dell
  │ IGCCSVC_DB=AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAApIr4U7ciMUGVjYhNG/
  │ mBswQAAAACAAAAAAAQZgAAAAEAACAAAABTcdKMjvtshdxaGSsG3CAaIa9hblVrt78YEEWKijgD0AAAAAAOgAAAAAIAACAAAADRs88tV83sgXin
  │ nY579aDSm4uJLrOtFGUB0Max60/
  │ viWAAAAD4ccjJ6JbOTlOwrWS7Ulh7UnqROPUSkzxhKYOeOcDlfuGRc1MkaRe7ldmR0km+DEy8PneT5wLvJzo0kgX3aTurbHU0hxEj8QjHummED
  │ Cyjbpu6hLQ3mTIL4Wfn3Vb5pZNAAAAAK1k+JRzE4UXk1C1cHK3vK0qig4M9/k5gpGRNSy3Ij0rafYWnDY05XKJchXR/
  │ tvbZ49rJlPOViJUtkjH9wl8bKQ==
  │ LOCALAPPDATA=C:\Users\dell\AppData\Local
  │ LOGONSERVER=\\DESKTOP-T5MQ1IA
  │ MSMPI_BIN=C:\Program Files\Microsoft MPI\Bin\
  │ NUMBER_OF_PROCESSORS=20
  │ ONEAPI_ROOT=C:\Program Files (x86)\Intel\oneAPI\
  │ OneDrive=F:\OneDrive
  │ OneDriveConsumer=F:\OneDrive
  │ OS=Windows_NT
  │ Path=D:\miniconda_win;D:\miniconda_win\Library\mingw-w64\bin;D:\miniconda_win\Library\usr\bin;D:
  │ \miniconda_win\Library\bin;D:\miniconda_win\Scripts;D:\miniconda_win\bin;D:\miniconda_win\condabin;D:
  │ \Program Files (x86)\VMware\VMware Workstation\bin;C:\VulkanSDK\1.3.268.0\Bin;c:
  │ \Users\dell\AppData\Local\Programs\cursor\resources\app\bin;C:\Program Files\Microsoft MPI\Bin;C:\Program
  │ Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:
  │ \Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files
  │ (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:
  │ \WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;D:\Program Files\Bandizip;C:
  │ \MinGW\bin;C:\ProgramData\chocolatey\bin;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;D;C:
  │ \Program Files\TortoiseSVN\bin;D:\Program Files\NVIDIA Corporation\Nsight Compute 2023.2.1;C:
  │ \Users\dell\AppData\Local\Microsoft\WindowsApps;C:\Users\dell\AppData\Local\JetBrains\Toolbox\scripts;C:
  │ \Program Files\Neovim\bin;C:\Users\dell\AppData\Local\Programs\oh-my-p;C:\Program Files (x86)\Incredibuild;C:
  │ \Program Files\dotnet;D:\Program Files\nodejs;C:\Program Files (x86)\GnuWin32\bin;C:\WINDOWS\system32;C:
  │ \WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:
  │ \Program Files\Docker\Docker\resources\bin;C:\Program Files\Git\cmd;.;D:\Program Files\Microsoft VS
  │ Code\bin;C:\Users\dell\.pixi\bin;C:\Users\dell\.cargo\bin;C:\Users\dell\AppData\Local\Microsoft\WindowsApps;C:
  │ \Users\dell\AppData\Local\JetBrains\Toolbox\scripts;C:\Users\dell\AppData\Local\Programs\oh-my-
  │ posh\bin;C:\ProgramData\chocolatey\lib\mingw\tools\install\mingw64\bin;D:\Program Files\SciTools\bin\pc-
  │ win64;C:\Users\dell\AppData\Roaming\npm;C:\Users\dell\AppData\Local\Microsoft\WindowsApps;C:
  │ \Users\dell\AppData\Local\Microsoft\WinGet\Links;C:\Users\dell\AppData\Local\pixi\bin;C:\Users\dell\.pixi\bin
  │ PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL
  │ POSH_INSTALLER=winget
  │ POSH_THEMES_PATH=C:\Users\dell\AppData\Local\Programs\oh-my-posh\themes
  │ PROCESSOR_ARCHITECTURE=AMD64
  │ PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 151 Stepping 2, GenuineIntel
  │ PROCESSOR_LEVEL=6
  │ PROCESSOR_REVISION=9702
  │ ProgramData=C:\ProgramData
  │ ProgramFiles=C:\Program Files
  │ ProgramFiles(x86)=C:\Program Files (x86)
  │ ProgramW6432=C:\Program Files
  │ PROMPT=$P$G
  │ PSExecutionPolicyPreference=Bypass
  │ PSModulePath=F:\�ĵ�\WindowsPowerShell\Modules;C:\Program Files\WindowsPowerShell\Modules;C:
  │ \WINDOWS\system32\WindowsPowerShell\v1.0\Modules
  │ PUBLIC=C:\Users\Public
  │ SESSIONNAME=Console
  │ SystemDrive=C:
  │ SystemRoot=C:\WINDOWS
  │ TEMP=C:\Users\dell\AppData\Local\Temp
  │ TMP=C:\Users\dell\AppData\Local\Temp
  │ USERDOMAIN=DESKTOP-T5MQ1IA
  │ USERDOMAIN_ROAMINGPROFILE=DESKTOP-T5MQ1IA
  │ USERNAME=dell
  │ USERPROFILE=C:\Users\dell
  │ VBOX_MSI_INSTALL_PATH=D:\Program Files\Oracle\VirtualBox\
  │ VK_SDK_PATH=C:\VulkanSDK\1.3.268.0
  │ VS140COMNTOOLS=D:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
  │ VS2022INSTALLDIR=D:\Program Files\Microsoft Visual Studio\2022\Community
  │ VULKAN_SDK=C:\VulkanSDK\1.3.268.0
  │ windir=C:\WINDOWS
  │ WSLENV=WT_SESSION:WT_PROFILE_ID:
  │ WT_PROFILE_ID={61c54bbd-c2c6-5271-96e7-009a87ff44bf}
  │ WT_SESSION=9aef226e-4a23-4261-92c6-c122722c3fe0
  │ XML_CATALOG_FILES=file:///D:/miniconda_win/etc/xml/catalog
  │ ZES_ENABLE_SYSMAN=1
  │ _CONDA_EXE=D:/miniconda_win\Scripts\conda.exe
  │ _CONDA_ROOT=D:/miniconda_win
  │
  │ F:\����\testtest\down>===^>
  │ . Stderr: ����������ȷ��
  │ . Script: @SET
  │ @ECHO ^<=== RATTLER ENV START ===^>
  │ @SET "PATH=F:\桌面\testtest\down\.pixi\envs\default;F:\桌面\testtest\down\.pixi\envs\default\Library/
  │ mingw-w64/bin;F:\桌面\testtest\down\.pixi\envs\default\Library/usr/bin;F:\桌面
  │ \testtest\down\.pixi\envs\default\Library/bin;F:\桌面\testtest\down\.pixi\envs\default\Scripts;F:\桌面
  │ \testtest\down\.pixi\envs\default\bin;%PATH%"
  │ @SET "CONDA_PREFIX=F:\桌面\testtest\down\.pixi\envs\default"
  │ @SET "PIXI_PROJECT_NAME=down"
  │ @SET "PIXI_PROJECT_VERSION=0.1.0"
  │ @SET "CONDA_DEFAULT_ENV=down"
  │ @SET "PIXI_PROJECT_MANIFEST=F:\桌面\testtest\down\pixi.toml"
  │ @SET "PIXI_PROMPT=(down) "
  │ @SET "PIXI_ENVIRONMENT_NAME=default"
  │ @SET "PIXI_PROJECT_ROOT=F:\桌面\testtest\down"
  │ @SET "PIXI_ENVIRONMENT_PLATFORMS=win-64"
  │ @CALL "F:\桌面\testtest\down\.pixi\envs\default\etc/conda/activate.d\libxml2_activate.bat"
  │ @ECHO ^<=== RATTLER ENV START ===^>
  │ @SET
  │

it seems that a utf-8 character is not supported.

Expected behavior

pixi can work normaly on a path with utf-8 character

@IncubatorShokuhou IncubatorShokuhou added the 🐞 bug Something isn't working label Mar 7, 2024
@wolfv
Copy link
Member

wolfv commented Mar 7, 2024

In rattler-build we've added chcp 65001 > nul to the start of the script. I wonder if that would fix it for pixi, too.

https://github.com/prefix-dev/rattler-build/blob/18f32b7a98eb21593eb367e5bfda131d1de5c9a5/src/script.rs#L160

@baszalmstra
Copy link
Contributor

I implemented the behavior @wolfv described in rattler. When #929 is merged it will land in main. The next version of pixi will include this. I was no longer able to reproduce this issue on my machine but I can imagine we didnt catch all cases. Let me know it it works for you @IncubatorShokuhou !

@baszalmstra
Copy link
Contributor

@IncubatorShokuhou conda/rattler#561 is now available with 0.16.0 could you retry with that version?

@IncubatorShokuhou
Copy link
Author

@baszalmstra It works for me. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐞 bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants