mirror of
https://github.com/nvbn/thefuck.git
synced 2025-01-18 20:11:17 +00:00
#71 Handle OSError
more gratefully
This commit is contained in:
parent
478fa4cd09
commit
f2392349f7
2
setup.py
2
setup.py
@ -2,7 +2,7 @@ from setuptools import setup, find_packages
|
|||||||
|
|
||||||
|
|
||||||
setup(name='thefuck',
|
setup(name='thefuck',
|
||||||
version=1.19,
|
version=1.20,
|
||||||
description="Magnificent app which corrects your previous console command",
|
description="Magnificent app which corrects your previous console command",
|
||||||
author='Vladimir Iakovlev',
|
author='Vladimir Iakovlev',
|
||||||
author_email='nvbn.rm@gmail.com',
|
author_email='nvbn.rm@gmail.com',
|
||||||
|
@ -3,18 +3,18 @@ import os
|
|||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
|
|
||||||
def _safe(path, method):
|
def _safe(fn, fallback):
|
||||||
try:
|
try:
|
||||||
return getattr(path, method)()
|
return fn()
|
||||||
except OSError:
|
except OSError:
|
||||||
return []
|
return fallback
|
||||||
|
|
||||||
|
|
||||||
def _get_all_bins():
|
def _get_all_bins():
|
||||||
return [exe.name
|
return [exe.name
|
||||||
for path in os.environ['PATH'].split(':')
|
for path in os.environ['PATH'].split(':')
|
||||||
for exe in _safe(Path(path), 'iterdir')
|
for exe in _safe(Path(path).iterdir, [])
|
||||||
if not _safe(exe, 'is_dir')]
|
if not _safe(exe.is_dir, True)]
|
||||||
|
|
||||||
|
|
||||||
def match(command, settings):
|
def match(command, settings):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user