JessicaTegner/pypandoc

Error converting to PDF when outputfile is a pathlib.Path object

kencx opened this issue · 0 comments

kencx commented

When trying to convert a file to PDF, passing a pathlib.Path object in the outputfile argument causes a TypeError:

>>> pypandoc.convert_file("README.md", to="pdf", outputfile=Path("test.pdf"))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.10/site-packages/pypandoc/__init__.py", line 168, in convert_file
    return _convert_input(discovered_source_files, format, 'path', to, extra_args=extra_args,
  File "/usr/lib/python3.10/site-packages/pypandoc/__init__.py", line 328, in _convert_input
    format, to = _validate_formats(format, to, outputfile)
  File "/usr/lib/python3.10/site-packages/pypandoc/__init__.py", line 306, in _validate_formats
    if outputfile[-4:] != ".pdf":
TypeError: 'PosixPath' object is not subscriptable

because the _validate_formats function assumes outputfile is always a string.