Skip to content

Commit

Permalink
Update comment in src/wireviz/wireviz.py (#392)
Browse files Browse the repository at this point in the history
Clarify all exceptions catched, including changes in #392

Co-authored-by: kvid <[email protected]>
  • Loading branch information
martinrieder and kvid committed Jul 5, 2024
1 parent 0e8ab7a commit f2a1aa8
Showing 1 changed file with 7 additions and 4 deletions.
11 changes: 7 additions & 4 deletions src/wireviz/wireviz.py
Original file line number Diff line number Diff line change
Expand Up @@ -410,10 +410,13 @@ def _get_yaml_data_and_path(inp: Union[str, Path, Dict]) -> (Dict, Path):
# if no FileNotFoundError exception happens, get file contents
yaml_str = open_file_read(yaml_path).read()
except (FileNotFoundError, OSError, ValueError) as e:
# if inp is a long YAML string, Pathlib will raise OSError: [errno.ENAMETOOLONG]
# (in Windows, it seems OSError [errno.EINVAL] might be raised in some cases)
# when trying to expand and resolve it as a path.
# Catch this error, but raise any others
# if inp is a long YAML string, Pathlib will normally raise
# FileNotFoundError or OSError(errno = ENAMETOOLONG) when
# trying to expand and resolve it as a path, but in Windows
# might ValueError or OSError(errno = EINVAL or None) be raised
# instead in some cases (depending on the Python version).
# Catch these specific errors, but raise any others.

from errno import EINVAL, ENAMETOOLONG

if type(e) is OSError and e.errno not in (EINVAL, ENAMETOOLONG, None):
Expand Down

0 comments on commit f2a1aa8

Please sign in to comment.