In Python 3.14, typing.Union changed its repr from 'typing.Union[X, Y]'
to 'X | Y' (PEP 604), breaking annotation inference.
Changes:
- Use getattr() instead of safe_getattr() for __module__ retrieval
(getattr_static fails on Union types in Python 3.14)
- Add fallback to typing.get_origin() when regex fails to match
- Normalize Union display back to 'Union[X, Y]' format for consistency
- Update test expectations for invalid annotation edge case in 3.14
Fixes: https://github.com/davidhalter/jedi/issues/2064
* origin:
Fix pip install -e in docs
Upgrade Mypy
Fix a few flake8 issues
Upgrade flake8
Upgrade other test runners
Remove 3.6/3.7 references and change tests slightly
Upgrade OS's that it is tested on
Try to add something to the README
In Python 3.13 the `locals` function now returns a fresh mapping
each time it's called (when called in a function). We thus need
to store a reference to the mapping being used, rather than
re-fetching it each time.
Since we don't actually need to modify the locals within the scope
of the test function itself, it suffices to use our own mapping
here rather than the result of calling `locals`, which fully
isolates this test from the nature of that function.
Fixes https://github.com/davidhalter/jedi/issues/2002
* Fix#1988
* Fix failing code quality test.
* Fix flake W504 line break after binary operator. Now as formatted by Black.
* Added test to test/completion/pep0484_basic.py
Addressed feedback from Dave
* properties with setters are now reported as 'property' for completion
* code cleanups
* fixed test
* fixed tests
* Revert "fixed test"
This reverts commit a80c955a489bce4a649452f7db49e59eab3ba38c.
* code quality cleanup
* so picky
* Revert "Revert "fixed test""
This reverts commit 58dfc5292e9df5415a212f6bf28356e76d515157.
* updated test per maintainer comments #1983
* removed extra char