-
-
Notifications
You must be signed in to change notification settings - Fork 384
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
Accommodate AppData Redirection for Windows Store Python #922
Comments
Found this documentation today. Given this documentation doesn't provide any real workaround to this, it seems this behavior is unavoidable. However, this documentation does mention that Therefore, in lieu of any apparent way to detect and work around this in real time, it may be best to detect this situation, drop an error to the user recommending the workaround above, and prematurely exit Briefcase. I'm sympathetic to users encountering this because the manifesting errors are dumbfounding and seem likely to deter people from using BeeWare altogether since it just looks like BeeWare is broken on their machine. |
Completely agree that the manifestations of this are something that we need to work around - the actual problems (like "heat.exe" not working) don't seem to bear any connection to the underlying cause. However, I'm not clear why we can't use |
I was considering the same thing. It's clear that filesystem interactions coming directly from the |
To confirm the suspicion above, the sandbox can be ostensibly subverted by simply creating the directory in a child process.
Of note, though, this behavior from windows store apps was implemented starting in windows 10 1903. Before that, a "copy on write to a per-user, per-app location" policy was used. That said, even 1903 went EOL at the end of 2020....so, it seems reasonable to not worry too much about this. |
Yeah - we don't need to worry too much about supporting software that is 2 years past EOL, unless you've got evidence that the EOL version still represents a significant proportion of the user base. |
Describe the bug
Windows will redirect interaction with
%LOCALAPPDATA%
when Python is installed from the Windows Store. This means that thebriefcase
data directory will be created at somewhere like%LOCALAPPDATA%\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\Local\BeeWare
instead of%LOCALAPPDATA%\BeeWare
.To Reproduce
Steps to reproduce the behavior:
%LOCALAPPDATA%\BeeWare
directory does not exist.briefcase build android
using Python from the Windows StoreExpected behavior
Briefcase should prevent this redirection or incorporate it in to sourcing the
briefcase
data directory.Of note, if the
%LOCALAPPDATA%\BeeWare
exists, this redirection will not happen.Environment:
Additional context
python/cpython#84557
https://docs.microsoft.com/en-us/windows/msix/desktop/desktop-to-uwp-behind-the-scenes#file-system
Workarounds
%LOCALAPPDATA%\Packages\<Python>\LocalCache\Local\BeeWare
directory to%LOCALAPPDATA%\BeeWare
The text was updated successfully, but these errors were encountered: