Endilll wrote: I think the primary reason we're adding type annotations is to improve user experience: better autocompletion, more information for user's type checkers. But we're constrained by two factors in achieving that goal.
First is Python 3.8, which the version that LLVM project uses, and is likely to continue using for the foreseeable future ([Discorse thread](https://discourse.llvm.org/t/rfc-upgrading-llvm-s-minimum-required-python-version/88605)). If you think we should follow the example of MLIR bindings, I'd like to see a very compelling case. Second is the ability to set up CI to check for completeness of type annotations. For a decade Python bindings were lacking dedicated maintainers and contributors. It was a patchwork of either afterthoughts or when someone realized they need to expose something for their specific use case, and no one can guarantee this won't happen again. But CI will continue to work and guide future contributors. As an example, I don't want to annotate something as `object` if our tools are going to be like "no `object` annotation here? cool, I can infer as much". > imo we would first need to decide which approach is preferable here It seems to me that #76664 is better aligned with what I've just written than this patch, but I'm happy to get convinced otherwise. @DeinAlptraum If you had more specific differences that I didn't cover here, please let me know. https://github.com/llvm/llvm-project/pull/173845 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
