Open florian-cl opened 11 months ago
IMO the types in tomlkit are more or less unusable: per this issue they generate a lot of noise and no help on the code that you want to write.
One approach to working around that goes something like this:
# pretend that we're just dealing with a regular dictionary
data: dict[str, Any] = tomlkit.parse(whatever)
...
# later cast back to the tomlkit type if some API requires it
data = cast("TOMLDocument", data)
which works: but of course it is just ceremony to suppress unhelpful errors, and abandons any potential benefits if the typing were more helpful.
For me, the current state of the typing is such that it would be better not to show it to users (ie remove py.typed
).
If anyone cares to make the typing better, then of course that's better! Fixing the warnings and errors that mypy generates on this project and its unit tests would be a sensible way of going about that, though there is probably quite a lot of work - and maybe some of it is not easy - to get that done:
$ mypy --strict tomlkit tests
...
Found 815 errors in 23 files (checked 26 source files)
When using tomlkit to modify a tomldocument, mypy throws a bunch of errors that I don't know how to fix. Example:
Output
Is there any fix for this? Any help is greatly appreciated :)