terminal: Fix Python virtual environment detection (#15989)
A Python virtual environment places a copy of the Python interpreter and related files into a special directory, such as `.env` or `env`. Currently, the built-in Zed terminal does not check if any entries specified in `terminal.detect_venv.directories` are directories. If a regular file with the same name exists, the terminal incorrectly attempts to activate it as a virtual environment. The fix is to ensure that an entry is a directory before attempting to activate the virtual environment. Here are screenshots of 3 possible scenarios: # With a regular file `.env` in the worktree ## Before  ## After  # With a directory called `.env` in the worktree  Release Notes: - Fixed detection of Python virtual environments ([#15570](https://github.com/zed-industries/zed/issues/15570)).
This commit is contained in:
parent
ccd8f75cff
commit
b55e8383c8
1 changed files with 1 additions and 1 deletions
|
@ -260,7 +260,7 @@ impl Project {
|
|||
.and_then(|(worktree, relative_path)| {
|
||||
worktree.read(cx).entry_for_path(&relative_path)
|
||||
})
|
||||
.is_some()
|
||||
.is_some_and(|entry| entry.is_dir())
|
||||
})
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue