yugr / python-hate

A growing list of things I dislike about Python
51 stars 2 forks source link

A few comments #1

Open altaurog opened 1 year ago

altaurog commented 1 year ago

Thanks for compiling this list! I learned quite a lot here.

For static and runtime type checking, have you had a look at mypy and pydantic?

I didn’t follow the part about relative import not able to import from parent directory. If parent directory is also a python package, this certainly will work: from ..module import. Do you mean cannot import from a non-package? That would be true for non-relative imports as well.

On dependency hell - I have run into this, but very infrequently. I have also found that most of my python projects have significantly fewer dependencies that similar projects in other popular languages, perhaps because the standard library is rather comprehensive, and many of the high-quality libraries focus on maintaining zero or few dependencies.

yugr commented 1 year ago

Thank you your interest in this project!

For static and runtime type checking, have you had a look at mypy and pydantic?

No, I haven't. I'll give them a try and add to the list.

Do you mean cannot import from a non-package? That would be true for non-relative imports as well.

Yes, this is about import from non-package. So e.g. this

$ cat main.py
import foo
$ python3 main.py

works but

$ cat main.py
from .utils import foo
$ python3 main.py
...
ImportError: attempted relative import with no known parent package

does not.

On dependency hell - I have run into this, but very infrequently.

Me too but I still decided to include this item for completeness.

chaypaterson commented 1 year ago

Absolutely agree with dependency hell, it's my most hated aspect of Python (or its ecosystem). It is amazing to me that the community thinks that fixing patch version numbers with the various dependency management frameworks is a reasonable solution.