Skip to content

Commit 1cd898e

Browse files
committed
♻️ refactor: update codebase #2
1 parent 8b6c08f commit 1cd898e

File tree

1 file changed

+20
-19
lines changed

1 file changed

+20
-19
lines changed

src/lib/python.sh

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -252,28 +252,29 @@ shell::removal_python_deps() {
252252
}
253253

254254
uninstall_all_pip_packages() {
255-
local pip_cmds=("pip" "pip3")
255+
echo "This will uninstall ALL pip and pip3 packages. Are you sure? (y/n)"
256+
read confirmation
257+
if [[ $confirmation == "y" || $confirmation == "Y" ]]; then
258+
echo "Uninstalling pip packages..."
256259

257-
for pip_cmd in "${pip_cmds[@]}"; do
258-
if command -v "$pip_cmd" >/dev/null 2>&1; then
259-
echo "Using $pip_cmd..."
260-
# List installed packages, extract package names (cut at the '==' separator)
261-
packages=$("$pip_cmd" freeze | awk -F'==' '{print $1}')
260+
# For pip (Python 2)
261+
if command -v pip &>/dev/null; then
262+
pip freeze | grep -v "^-e" | xargs pip uninstall -y
263+
echo "All pip packages have been uninstalled."
264+
else
265+
echo "pip is not installed."
266+
fi
262267

263-
if [ -z "$packages" ]; then
264-
echo "No packages found for $pip_cmd."
265-
else
266-
for package in $packages; do
267-
# Some lines could be empty; skip them.
268-
[ -z "$package" ] && continue
269-
echo "Uninstalling $package using $pip_cmd..."
270-
"$pip_cmd" uninstall -y "$package"
271-
done
272-
fi
268+
# For pip3 (Python 3)
269+
if command -v pip3 &>/dev/null; then
270+
pip3 freeze | grep -v "^-e" | xargs pip3 uninstall -y
271+
echo "All pip3 packages have been uninstalled."
273272
else
274-
echo "$pip_cmd is not installed or not found. Skipping."
273+
echo "pip3 is not installed."
275274
fi
276-
done
277275

278-
echo "All pip-installed packages have been removed (if they were found)."
276+
echo "Operation completed."
277+
else
278+
echo "Operation canceled."
279+
fi
279280
}

0 commit comments

Comments
 (0)