Commit Graph

1905 Commits

Author SHA1 Message Date
Daniel Hahler
e621e8590c Improve IntegrationTestCase.__repr__
Having the path (together with the line only) makes it easy to go to the
actual test.
2017-12-14 22:44:24 +01:00
Robin Roth
88cf592c95 Make goto work with await
Created together with @langsamer and @davidhalter
2017-10-28 14:10:05 +02:00
Dave Halter
752b7d8d49 One more usages test. 2017-10-15 21:11:49 +02:00
Dave Halter
2b138b3150 Usages fix for more complex situations 2017-10-09 21:09:04 +02:00
Dave Halter
bedff46735 Simplify usages. It should also work way better, now. 2017-10-08 20:13:24 +02:00
Dave Halter
21531abd1e Fix a small test error 2017-10-05 20:43:31 +02:00
Dave Halter
7019ca643e Remove a possible security issue
sys paths are not executed anymore and use static analysis now.
2017-10-05 19:57:50 +02:00
Dave Halter
51d2ffb078 Use sys path mostly from project and move some sys path stuff around. 2017-10-05 10:06:28 +02:00
Dave Halter
383f749026 Move the initial sys path generation into a new project class. 2017-10-02 20:19:55 +02:00
Dave Halter
32917d5565 Remove the function context to a separate module. 2017-09-29 15:28:17 +02:00
Dave Halter
95930d293c Move instance module to the context package. 2017-09-29 15:14:56 +02:00
Dave Halter
8f177eea07 Move the ModuleContext to a separate module. 2017-09-29 13:24:48 +02:00
Dave Halter
d99d4deebf Merge branch 'values' 2017-09-28 16:19:38 +02:00
Dave Halter
ee52cc7501 Fix most dynamic array issues. 2017-09-26 17:26:33 +02:00
Dave Halter
d6a04b2928 Remove the deprecated attributes from Jedi. 2017-09-20 18:27:29 +02:00
Dave Halter
c7dbf95344 Fix recursion issues.
Completely refactored the recursion checker and changed some settings.

Fixes #861.
2017-09-17 21:54:09 +02:00
Dave Halter
c51634b8d4 dict_values should be accessible for CompiledObjects. 2017-09-17 02:48:09 +02:00
Dave Halter
8fcb468539 Jedi was able to go crazy and loop endlessly in certain if/self assignment combinations.
Here we limit type inferance per tree scope. I'm still not sure this is the way
to go, but it looks okay for now and we can still go anther way in the future.
Tests are there.

Fixes #929.
2017-09-17 02:04:42 +02:00
Dave Halter
9dd2027299 Way better support for instantiated classes in REPL
Fixes several issues:

- It was not possible to correctly trace where instances were coming from in a
  REPL. This led to them being pretty much ignored.
- Instances were then just treated as classes and not as actual instances in
  MixedObjects. (However since they were ignored in the first place this
  wasn't really an issue).
- Avoiding the repr bug https://github.com/python/cpython/pull/2132/files in
  Jedi is working a bit differently. We're just never accessing Objects
  directly. This should work around 99.99% of the cases were people are using
  this stuff.

Fixes #872
2017-09-15 01:55:18 +02:00
Dave Halter
63edbdcc5b Better context completions for finally/except/else/elif
Fixes #837
2017-09-15 00:48:56 +02:00
Dave Halter
e389c61377 Relative imports with more than one level did not work
Fixes #784.
2017-09-14 22:06:08 +02:00
Dave Halter
ab84030ad2 full_name was buggy when used on import error names
Fixes #873.
2017-09-14 20:41:25 +02:00
Dave Halter
2210b11778 Fix some issues with import completion
Fixes #759
2017-09-14 20:09:13 +02:00
Dave Halter
4c2d1ea7e7 Understand context managers correctly
Fixes #812.
2017-09-13 11:00:34 +02:00
Dave Halter
a8a15114ac Fix namedtuple support
There were a couple issues:
 - namedtuple with one member didn't work
 - namedtuple content access was never possible
 - operator.itemgetter didn't work properly. Corrected py__bool__ for FakeSequence

Fixes #730.
2017-09-12 11:06:39 +02:00
Dave Halter
4a544c29ea Fix a follow_imports (goto) issue. 2017-09-11 23:32:10 +02:00
Dave Halter
619acbd2ca Goto didn't work well on imports in __init__.py files.
Fixes #956.
2017-09-11 21:48:37 +02:00
Dave Halter
c05f1d3ccc Completion after as in imports should not be possible.
Fixes #841.
2017-09-10 11:27:57 +02:00
Dave Halter
c25a4a00df readlines should be completable.
Fixes #921.
2017-09-10 01:54:50 +02:00
Dave Halter
5c6f8bda01 Fix inspect.signature for Python3.4. 2017-09-10 01:34:15 +02:00
Dave Halter
d1c85191a0 Start using inspect.signature for CompiledObject params.
Fixes 917 and 924.
2017-09-09 22:29:00 +02:00
Dave Halter
c7f225439d Comprehenions can also define self variables.
Also related to #932.
2017-09-09 20:20:05 +02:00
Dave Halter
40f4f032c6 Fix class/def/class nesting definitions
Fixes #932.
2017-09-09 20:13:03 +02:00
Dave Halter
3bceef075a Merge branch 'numpydoc' of https://github.com/bcolsen/jedi 2017-09-09 18:50:19 +02:00
Dave Halter
381fedddb4 Fix get_line_code().
Fixes #948.
2017-09-09 18:28:05 +02:00
Dave Halter
ef6a1ca10f Fix an issue with choosing the right lines in get_line_code. Refs #948. 2017-09-09 18:10:53 +02:00
Dave Halter
c4601b835f Don't go crazy with big lists. 2017-09-07 01:26:53 +02:00
Dave Halter
e85000b798 Replace memoize_default with two nicer functions. 2017-09-05 18:46:16 +02:00
Dave Halter
882f8029ea Use split_lines and python_bytes_to_unicode directly. 2017-09-03 18:38:00 +02:00
Dave Halter
ef89593896 Disable more tests in Python2.6, because of set literals that don't exist there. 2017-09-03 02:01:43 +02:00
Dave Halter
957f2cedf4 Disable some tests that don't run in 2.6, because its syntax doesn't support it. 2017-09-03 01:23:54 +02:00
Dave Halter
b64690afb8 Param defaults were not correctly followed when goto was used on them. 2017-09-03 00:22:59 +02:00
Dave Halter
6419534417 Some more _get_definition fixes 2017-09-02 21:37:59 +02:00
Dave Halter
7e19e49200 Start replacing get_definitions. 2017-09-02 17:48:01 +02:00
Dave Halter
9cac7462d6 Return statements should be handled correctly if the return_stmt is only a return without an expression behind it. 2017-09-02 14:03:54 +02:00
Dave Halter
c47f5ca68c Fix issues with yield. 2017-09-01 18:38:19 +02:00
Dave Halter
e2d53f51b0 test for yields in expressions. 2017-09-01 18:08:52 +02:00
Dave Halter
a37201bc1d Finally fixing the Python 2 issues with static_getattr. 2017-08-13 22:24:50 +02:00
Dave Halter
13a0d63091 Add Python 2 compatibility. 2017-08-12 23:15:16 +02:00
Dave Halter
88cfb2cb91 Remove side effects when accessing jedi from the interpreter.
Note that there is http://bugs.python.org/issue31184.
Fixes #925.
2017-08-12 22:49:05 +02:00