Fix linux beefbuild indefinite hang on some environments.#2471
Open
mdsitton wants to merge 1 commit into
Open
Conversation
Initialize the packaged Linux user data directory for both BeefIDE and the CLI so BeefBuild stores managed libraries under the user's config directory instead of the installation directory. Report managed cache directory creation failures and propagate package manager initialization errors back through project loading. This prevents projects from being marked deferred when no package work was queued, which previously left BeefBuild polling indefinitely.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I noticed that beefbuild when installed into a system location that is inaccessible to writes runs into a permission issue with builds since the previous behavior was to create the BeefManaged folder relative to the bin/ location instead of the location the ide currently does which is in
~/.config/beeflang/BeefManagedSo with that said this PR makes the following changes:
Initialize the packaged Linux user data directory the same way for BeefIDE and BeefBuild so that they both store managed libraries under the user's config directory instead of the installation directory.
I've also made some additional changes to surface errors like this quicker in the future instead of having silently failing build command that seems to never exit.
As such now if there is any similar permissions issues in the future it will output something like this and exit instead of the hang: