Sam Roeca
c2fd7b3104
Fix: upward search omits unnecessary paths
...
In the previous implementation, Jedi's traverse_parents function
traversed parent directories to the system root every time. This would
inadvertently add every folder to the system root every time. Obviously,
this is not the behavior desired for the import system.
This commit collects directories in an upward search until we:
1. Hit any directory without an __init__.py, AND
2. Are above self._path.
2019-11-29 21:12:12 -05:00
Sam Roeca
4bc4f167e9
Revert "Fix: no longer shows folders recursively to root"
...
This reverts commit 03b4177d3d .
2019-11-29 20:11:23 -05:00
Sam Roeca
03b4177d3d
Fix: no longer shows folders recursively to root
...
In the previous implementation, Jedi would's traverse_parents function
traversed parent directories to the system root every time. This would
inadvertently add every folder to the system root every time. Obviously,
this is not the behavior desired for the import system.
This pull request provides a new argument to the traverse_parents
function, "root", which represents the root parent for the search. This
argument defaults to None, thereby preserving the existing behavior of
the function.
I chose to duplicate some code for performance reasons. Since I'm trying
to avoid too much path manipulation magic, we do:
* a search to a valid specified root, OR
* a simple upward search until hitting the system root when there is no
valid root specified.
2019-11-28 23:04:08 -05:00
Samuel Roeca
761f0828c7
Fix missing inference for typing.Type[typing.TypeVar] ( #1448 )
...
* Add Type[TypeVar] support
* Completion tests for typing.Type[typing.TypeVar]
2019-11-27 22:10:58 +01:00
Dave Halter
facd21afc6
Remove Python 3.9 dev build from travis, it's not needed
2019-11-27 20:50:29 +01:00
Dave Halter
e1d840c89b
Start to use Python 3.8 in the normal CI pipeline
2019-11-27 20:15:52 +01:00
Dave Halter
15c13c1386
Fix the pow test for Python 3.8
2019-11-27 20:12:50 +01:00
Jérome Perrin
6d632a01eb
Fix inference from type comment for function parameter with dot
...
fix for https://github.com/davidhalter/jedi/issues/1437
2019-11-08 13:41:17 +01:00
Endill
00b220516d
Fix annotation string generated from wrong object
2019-10-26 13:58:15 +02:00
Dave Halter
a6fcf779d4
Fix a small issue created in #1398
2019-09-21 23:29:07 +02:00
Levente Polyak
527ef6fcdd
fix static analysis test skips with latest pytest
...
Latest pytest ensures pytest.skip is being called with a str parameter.
However, test_static_analysis passed over the skip parameter which
contains a tuple returned from skip_python_version leading to test
regression.
Unify the version skip reasons for both, static analysis and integration
tests by using a shared BaseTestCase parent to avoid code duplication.
Furthermore handle test_static_analysis skip_reason extraction
orthogonal to test_completion.
2019-09-21 21:42:05 +02:00
Philipp A
a0f95fc89f
Fixed rST in changelog
2019-09-21 21:35:04 +02:00
Maxim Cournoyer
96d650cab3
test: test_completion: Dynamically resolve current directory name.
...
This fixes issue #1395 (see:
https://github.com/davidhalter/jedi/issues/1395 ).
* test/test_api/test_completion.py(current_dirname): New variable.
(test_file_path_completions): Use it.
2019-09-19 23:35:18 +02:00
Dave Halter
66022edf14
Skip Python 2 tests for some array issues
2019-09-06 00:04:44 +02:00
Dave Halter
ae79919eb4
Skip some param resolving tests in Python 2/3.4
2019-09-05 18:27:37 +02:00
Dave Halter
fbe58306c3
Add a few tests for a previous assertion failure
2019-09-05 10:57:04 +02:00
Dave Halter
9c19f72af3
Make sure a compiled instance is is_compiled
2019-09-05 10:13:03 +02:00
Dave Halter
a9f1d3d9bb
Reenable a test
2019-09-05 10:09:33 +02:00
Dave Halter
1db3e9a65d
Disable a test in Python2
2019-09-05 10:03:50 +02:00
Dave Halter
599eded3d1
Remove a few unused imports
2019-09-05 00:54:13 +02:00
Dave Halter
4e68287bba
Move eval_node to one place
2019-09-05 00:52:14 +02:00
Dave Halter
008e9860a8
Avoid creating the same object twice
2019-09-05 00:37:51 +02:00
Dave Halter
8cd5932fed
Move inference_state.goto to the name and _follow_error_node_imports_if_possible away from inference_state
2019-09-05 00:34:13 +02:00
Dave Halter
67c007338a
Make some dynamic array variables private
2019-09-05 00:18:01 +02:00
Dave Halter
aea2ddcbd8
ContextualizedName -> TreeNameDefinition
2019-09-05 00:15:38 +02:00
Dave Halter
4d332c32c0
Use create_name instead of duplicated logic
2019-09-05 00:04:24 +02:00
Dave Halter
02046d5333
Replace obj with value
2019-09-04 11:12:30 +02:00
Dave Halter
2faa8ade8b
Remove get_object, it's not needed anymore
2019-09-04 11:04:09 +02:00
Dave Halter
f9292ca8fa
Implement properties properly
2019-09-04 11:00:43 +02:00
Dave Halter
40b01bfd2c
Make arguments private for instance
2019-09-04 09:34:22 +02:00
Dave Halter
46e9b9e7cf
Refactor dynamic params a bit
2019-09-04 09:31:01 +02:00
Dave Halter
96848dd627
Revert "Refactor some dynamic function arguments things"
...
This reverts commit e7d9a59da2 .
2019-09-04 09:28:31 +02:00
Dave Halter
e7d9a59da2
Refactor some dynamic function arguments things
2019-09-04 09:27:06 +02:00
Dave Halter
dd400f115a
Move some annotation inferring code to proper functions
2019-09-04 01:29:41 +02:00
Dave Halter
34f131e9b3
Remove an unneeded list cast
2019-09-04 01:22:16 +02:00
Dave Halter
47d6ae3da1
SimpleParamName -> AnonymousParamName
2019-09-04 01:20:44 +02:00
Dave Halter
79f9d78c83
Make create_instance_context a lot more understandable (and shorter)
2019-09-04 01:06:25 +02:00
Dave Halter
06d2119f51
Make sure a self variable is only defined in a function not outside
2019-09-04 00:53:46 +02:00
Dave Halter
b27f47683c
get_first_non_keyword_argument_values is not really used anymore
2019-09-04 00:08:49 +02:00
Dave Halter
0be9ab0caf
A simplification
2019-09-04 00:03:03 +02:00
Dave Halter
c8564a68df
Fix recursion issues about dynamic param lookups and defaults work again
2019-09-03 23:59:31 +02:00
Dave Halter
75262d294f
Refactor search_param_names interface
2019-09-03 22:17:30 +02:00
Dave Halter
ac4dd06d11
Use get_executed_param_names if get_executed_param_names_and_issues is not necessary
2019-09-03 22:11:00 +02:00
Dave Halter
d4f3963cd0
Don't use get_executed_param_names_and_issues as an attribute on arguments
2019-09-03 22:07:34 +02:00
Dave Halter
a3659e2750
Remvoe AnonymousArguments
2019-09-03 21:59:50 +02:00
Dave Halter
3a74d65404
Refactor AnonymousInstance/TreeInstance, so that the anonymous instance doesn't have to use arguments
2019-09-03 21:56:48 +02:00
Dave Halter
acda3527cb
Separate tree/compiled instances better
2019-09-03 21:36:13 +02:00
Dave Halter
03f6d0edf8
Get rid of create_init_executions
2019-09-03 17:50:03 +02:00
Dave Halter
c79faa6b10
Implement super() properly
2019-09-03 14:53:40 +02:00
Dave Halter
4b10644100
Start using AnonymousMethodExecutionContext instead of the normal function execution context with arguments
2019-09-03 14:44:01 +02:00