DiffSK / configobj

Python 3+ compatible port of the configobj library
https://configobj.readthedocs.org
Other
321 stars 76 forks source link

Suggestion: support for pathlib.Path object #235

Open Magnusm94 opened 1 year ago

Magnusm94 commented 1 year ago

In the __init__ method of configobj.ConfigObj, would it take a lot to be able to accept a pathlib.Path object without causing any other errors? I was testing out by adding a few lines of code above infile = infile or [] at lineno 1192:

if infile and not isinstance(infile, str):
    if type(infile).__base__.__name__ == 'Path':
        infile = str(infile)
infile = infile or []

I'm a bit unsure if this could cause any other issues, or if it works in every case, or if actually importing pathlib.Path would be required if the isinstance() check. Or maybe some other smart way? :)

from pathlib import Path

if isinstance(infile, Path):
    infile = str(infile)
infile = infile or []
jelmer commented 2 months ago

That should work - would you be able to provide a PR with a test?