Hacker News new | ask | show | jobs
by juliusgeo 1169 days ago
I use PyCharm for my job as well as for personal projects, and it handles large codebases with type annotations very well. I would compare it to Visual Studio (not Code) in the sense that it’s a batteries included deal, which means larger initial size but I use maybe two plugins.
1 comments

Re type annotations, is there some non-default setting or plugin I am overlooking?

As a long time pycharm user who recently switched to vscode, I have found pycharm's understanding of type annotations to be borderline broken.

  def foo(value: Optional[str]) -> None:
      print(value.replace("bar", "baz"))
mypy and vscode both point out this will fail when value is None, but my pycharm seems to think this is perfectly fine.
To be honest I don’t use the type annotations given by the IDE that much, and I also only encounter them in my work code base (pymongo), so I can’t comment on that part. I was mainly commenting just on its ability to handle large code bases.