Skip to content

Commit 93bb424

Browse files
committed
Make _open_gz piped program opening simpler
1 parent 3c31757 commit 93bb424

File tree

1 file changed

+7
-13
lines changed

1 file changed

+7
-13
lines changed

src/xopen/__init__.py

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -492,9 +492,7 @@ def _open_zst( # noqa: C901
492492
return f
493493

494494

495-
def _open_gz( # noqa: C901
496-
filename, mode: str, compresslevel, threads, **text_mode_kwargs
497-
):
495+
def _open_gz(filename, mode: str, compresslevel, threads, **text_mode_kwargs):
498496
assert "b" in mode
499497
if compresslevel is None:
500498
# Force the same compression level on every tool regardless of
@@ -523,18 +521,14 @@ def _open_gz( # noqa: C901
523521
)
524522
except zlib_ng.error: # Bad compression level
525523
pass
524+
525+
for program in ("pigz", "gzip"):
526526
try:
527-
try:
528-
return _PipedCompressionProgram(
529-
filename, mode, compresslevel, threads, **_program_settings("pigz")
530-
)
531-
except OSError:
532-
return _PipedCompressionProgram(
533-
filename, mode, compresslevel, threads, **_program_settings("gzip")
534-
)
527+
return _PipedCompressionProgram(
528+
filename, mode, compresslevel, threads, **_program_settings(program)
529+
)
535530
except OSError:
536-
pass # We try without threads.
537-
531+
pass
538532
return _open_reproducible_gzip(
539533
filename,
540534
mode=mode,

0 commit comments

Comments
 (0)