Commit Graph

937 Commits

Author SHA1 Message Date
Daniel Hahler
fab26f4551 Update submodule pythonx/jedi 005f6939...afbd8cad
* pythonx/jedi 005f6939...afbd8cad (208):
      > Don't test Python 3.4 in tox anymore by default
      > Add the release date to Changelog
      > Jedi needs at least parso 0.5.2 now
      > Fix a rb byte literal test
      > Goto definition doesn't work on strings anymore, fixes microsoft/vscode#81520
      > Make sure that sequence literals have the right generic classes, fixes #1416
      > Improved Generic subclass matching
      > Make sure overload checks work for TypeAlias, see #1416
      > Avoid recursion in a specific example, see also #1458
      > Fix simple typo: wheter -> whether (#1460)
      > Completions.complete returns None for fuzzy completions #1409
      > Cleanup fuzzy tests a bit, see #1409
      > Add fuzzy completions to Changelog
      > Merge branch 'feature_827_fuzzy_search' of https://github.com/jmfrank63/jedi
      > Python 2 compatibility
      > Make sure that the definition order in stubs are ignored
      > Make sure that a goto on stubs even without the implementation is possible
      > Fix a goto case with nested pyi files
      > Catch some cases were _sqlite3.Connection was misidentified as sqlite3.Connection
      > Rename goto_changes to options
      > Fix: Stubs in typeshed weren't loaded properly sometimes, fixes #1434
      > Files bigger than one MB (about 20kLOC) get cropped to avoid getting stuck completely
      > Upgrade typeshed, fixes #1084
      > Add a typeshed README
      > Make sure param annotation completions work
      > Make sure that you can select virtualenvs more precisely, fixes #1407
      > Python 2 compatibility
      > Make sure goto definitions works on with, fixes #1280
      > Make sure that __getattr__ is always working with Interpreter
      > qualified names can be None, so we need to handle it
      > Cleanup some callbacks
      > Make sure that Python 2 passes a test on more systems
      > Make sure warnings are not shown if a property is executed, fixes #1383
      > Fix RecursionError: global statements in modules should just be ignored, fixes #1457
      > Make it possible to infer Callable TypeVars, fixes #1449
      > Account for sys path potentially not being all unicode in typeshed, fixes #1456
      > Make sure docstrings can always be inferred for builtins modules, fixes #1432
      > Forgot to add some test files
      > Get the context of a class name right, fixes #1396
      > Make sure classmethod signatures don't include cls, fixes #1455
      > Add a test to show that type var inference also works for tuples
      > Don't use globals anymore
      > Remove a duplicate method
      > More docstrings
      > A bit better documentation
      > Refactor so typing uses BaseTypingValueWithGenerics
      > Make some more classes private for inference.gradual.base
      > Use _create_instance_with_generics
      > The generics manager is now part of DefineGenericBase
      > Remove get_index_and_execute and use something else
      > _InstanceWrapper to _GenericInstanceWrapper
      > Another rename for readability
      > Merge GenericClass and  _AbstractAnnotatedClass
      > Use the generics manager for all the typing classes
      > Start using generic managers, for #1413
      > Start working on generic managers, see #1413
      > Move iter_over_arguments to a separate file
      > value_of_index -> context_of_index
      > Try to prepare DefineGenericBase for a more general usage
      > Make AbstractAnnotatedClass private
      > Move parts of AbstractAnnotatedClass to the new class DefineGenericBase
      > Formatting
      > Rename two classes to make some things clearer
      > Make some lines shorter
      > Remove an unused InstanceArguments
      > Move more stuff from gradual/typing.py to gradual/base.py
      > Remove TypingName, it looks like it's not used
      > Start splitting up gradual/typing.py
      > Make sure Callable TypeVars are better identified, solves a part of #1413
      > Remove a TODO that was implemented
      > Pin colorama to a version that works for Python 3.4
      > Find active conda environment and set it as default (if there is one) (#1440)
      > Remove Python 3.4 test from appveyor
      > Make sure overload signatures work, see #1417
      > Shorten a line to < 100 chars
      > Fix a tuple test
      > Make sure that Tuple autocompletes properly, fixes #1389
      > Avoid more Python 2
      > Fix issues with interpreter completions on unittest.mock.
      > Start writing the changelog
      > Improve call signature detection by a lot
      > Make sure we use the right context in case of goto with decorators, fixes #1427
      > Python 2 still sucks.
      > Make sure an assert no longer causes unnecessary trouble
      > Make sure that decorator signature completion is working, see #1433
      > Avoid wrong random call signature completion, fixes #1433
      > Make sure py__iter__ has the right signature
      > Remove probably dead code
      > Python 2
      > Make sure execute_function_slots and get_function_slots is defined for all instances
      > Upgrade typeshed to the latest commits
      > Make sure that the differences are calculated a bit more reliable, fixes #1429
      > Unfortunately commited something that should not have been committed
      > Fix Python 2 issues
      > A CompiledInstance is not really compiled, it's an instance of a compiled class value
      > Remove is_package on contexts
      > Fix some more package issues
      > Get rid of py__package__ from contexts
      > Make is_package a function and call it consistently
      > Make sure code_lines works on stubs, even if they are builtins
      > Fix the MixedContext and also use MixedModuleContext
      > Separate CompiledModuleContext from CompiledContext, fixes #1428
      > Fix contextualizing of subscriptlist
      > Fix a globals context issue, fixes #1435
      > Remove Python 2 implicit relative imports feature
      > A small rename of a value that is actually a context
      > Merge pull request #1451 from pappasam/FIX_SHOW_SYSTEM_FOLDERS
      > Add __ne__ to BaseValueSet. Might have caused issues in Python 2, see #1442
      > Avoid finding submodules for compiled objects, because it's at least not implemented
      > Make sure that goto on a subscript colon doesn't crash
      > Fix getitem in compiled
      > Make sure py__get__ is defined on all values
      > Fix file name completions when file name is too long
      > Fix an issue around completions in comments before strings
      > Fix missing inference for typing.Type[typing.TypeVar] (#1448)
      > Remove Python 3.9 dev build from travis, it's not needed
      > Start to use Python 3.8 in the normal CI pipeline
      > Fix the pow test for Python 3.8
      > Fix inference from type comment for function parameter with dot
      > Fix annotation string generated from wrong object
      > Fix a small issue created in #1398
      > fix static analysis test skips with latest pytest
      > Fixed rST in changelog
      > test: test_completion: Dynamically resolve current directory name.
      > Skip Python 2 tests for some array issues
      > Skip some param resolving tests in Python 2/3.4
      > Add a few tests for a previous assertion failure
      > Make sure a compiled instance is is_compiled
      > Reenable a test
      > Disable a test in Python2
      > Remove a few unused imports
      > Move eval_node to one place
      > Avoid creating the same object twice
      > Move inference_state.goto to the name and _follow_error_node_imports_if_possible away from inference_state
      > Make some dynamic array variables private
      > ContextualizedName -> TreeNameDefinition
      > Use create_name instead of duplicated logic
      > Replace obj with value
      > Remove get_object, it's not needed anymore
      > Implement properties properly
      > Make arguments private for instance
      > Refactor dynamic params a bit
      > Revert "Refactor some dynamic function arguments things"
      > Refactor some dynamic function arguments things
      > Move some annotation inferring code to proper functions
      > Remove an unneeded list cast
      > SimpleParamName -> AnonymousParamName
      > Make create_instance_context a lot more understandable (and shorter)
      > Make sure a self variable is only defined in a function not outside
      > get_first_non_keyword_argument_values is not really used anymore
      > A simplification
      > Fix recursion issues about dynamic param lookups and defaults work again
      > Refactor search_param_names interface
      > Use get_executed_param_names if get_executed_param_names_and_issues is not necessary
      > Don't use get_executed_param_names_and_issues as an attribute on arguments
      > Remvoe AnonymousArguments
      > Refactor AnonymousInstance/TreeInstance, so that the anonymous instance doesn't have to use arguments
      > Separate tree/compiled instances better
      > Get rid of create_init_executions
      > Implement super() properly
      > Start using AnonymousMethodExecutionContext instead of the normal function execution context with arguments
      > Prepare instance for AnonymousMethodExecutionContext
      > Use the function execution filters with proper inheritance
      > Deal with inheritance properly when dealing with function executions
      > Separate FunctionExecution and AnonymousFunctionExecution
      > Fix static analysis for params
      > Add get_param_names to the function execution, which is needed to do some filtering
      > Move the normal anonymous arguments case over to names
      > Prefer annotations in SimpleParamName
      > Add some dynamic inference checks for annotations
      > Avoid using arguments.get_executed_param_names_and_issues
      > Remove get_executed_param_names_and_issues from FunctionExecution
      > Use function/arguments intead of execution
      > Make FunctionExecutionContext.arguments private
      > _ArrayInstance -> _DynamicArrayAdditions
      > var_args -> arguments
      > Fix the final issues about parameter arguments
      > Fix infering of dynamic params
      > Remove an unnecessary piece of code from goto
      > Use Context.create_name instead of weird playing with params everywhere
      > Use SimpleParamName everywhere it's needed
      > Refactor params and what execution contexts need
      > Fix a TODO
      > Make the order of overloaded functions correct
      > Get py__simple_getitem__ working on dicts that have a dict as a param, see #1385
      > Move some code from SequenceLiteralValue to DictLiteralValue
      > Fix usages in context of the new parso parameter include_setitem=True
      > execution_allowed should be called with nodes
      > Move a repr function
      > Fix cases where dicts are passed to dicts and generics were not properly applied
      > Small rename
      > Change a test so it works with generics
      > Get py__simple_getitem__ modifications working for list/dict instances
      > Random objects should not be affected by list/dict modifications
      > Add a way how dict setitem can be understood
      > Move the dynamic module to dynamic_params
      > Move the dynamic arrays code
      > Add a comment about how _ArrayInstance is used
      > check_array_additions -> _check_array_additions
      > Remove methods that are not used
      > Create separate classes for FakeSequence
      > Remove _FakeArray, because it's no longer needed
      > Enable a sys path test that is working now
      > Reenable some tests
      > Add a method implementation, that doesn't seem to be used, but it might one day be.
      > Merge branch 'refactoring'
      > Merge branch 'master' of github.com:davidhalter/jedi
      > Bump version
2019-12-20 12:37:26 +01:00
Daniel Hahler
4dcc6437e3 Update submodule pythonx/parso c0ace63...fb010f2
* pythonx/parso c0ace63...fb010f2 (22):
      > Add a release date to the Changelog
      > Prepare the next release v0.5.2
      > Merge pull request #93 from yangyangxcf/fstring_tokenize
      > Add information about named expressions (#90) to the Changelog
      > Use a lower pytest version so python3.4 is able to pass
      > Use Python 3.8 on travis for testing
      > Whitespace changes
      > Fix: Add more cases for named expression errors, see #89, #90
      > Add Python 3.8 to tested environments for tox
      > Fix: Catch some additional cases named expr errors, see #89, #90
      > Make sure that function executions are errors as well, see #90
      > Some minor refactorings for #90
      > Merge https://github.com/JarryShaw/parso into master
      > Fix trailing comma error
      > Remove debug print statement
      > Fix typo (#84)
      > Fix is_definition test
      > Add include_setitem for get_defined_names, is_definition and get_definition
      > Make is_definition work on setitem modifications, see #66
      > ENH: update grammar for py39 (#78)
      > Refactor the ambiguity tests a bit, see #70
      > Make pgen2's grammar ambiguity detection handle more cases
2019-12-20 12:37:23 +01:00
Daniel Hahler
c80a08d983 Fix invalidating cache with jedi#show_call_signatures (#968) 2019-12-08 17:26:24 +01:00
Daniel Hahler
ac6b2f1e3e ci: Travis: slighty improve codecov-bash invocation (#967) 2019-12-05 23:09:19 +01:00
Dave Halter
12e97c7a04 Make sure call signatures are cleared before they are calculated again 2019-12-05 01:02:58 +01:00
Daniel Hahler
08f13af066 completions: skip docstr without preview, handle exceptions (#958)
Closes https://github.com/davidhalter/jedi-vim/issues/948.
2019-10-20 23:56:22 +02:00
Daniel Hahler
5880f2de93 Revisit usage highlighting (#851) 2019-10-16 22:54:29 +02:00
Daniel Hahler
b4b2f3ef54 debug info: catch any errors with PythonJedi commands
Ref: https://github.com/davidhalter/jedi-vim/issues/953
2019-09-28 12:34:54 +02:00
Daniel Hahler
50abb5e95a jedi#debug_info: escape script path for "git" (#950)
Ref: https://github.com/davidhalter/jedi-vim/issues/949
2019-09-24 08:43:48 +02:00
Daniel Hahler
89c995e7d9 display_debug_info: add global sys.executable (#947)
This helps with bug reports in general.
2019-09-19 00:46:16 +02:00
Daniel Hahler
4f2499e4f2 ci/tests: update dependencies 2019-08-19 01:06:32 +02:00
Daniel Hahler
7665d73eae Update submodule pythonx/jedi to v0.15.1: 35e5cf2c...005f6939 (#940)
* pythonx/jedi 35e5cf2c...005f6939 (5):
      > Write the CHANGELOG for 0.15.1
      > Remove forgotten debug/print in filename completion. (#1380)
      > staticmethod and a few other cases might not have properly returned its signatures
      > Remove reference to a file that doesn't exist anymore
      > Bump version to make it clear that it's a different one than the current one
2019-08-18 21:35:09 +02:00
Daniel Hahler
b3d715c5fc Update submodule pythonx/jedi 60415033...35e5cf2c
* pythonx/jedi 60415033...35e5cf2c (106):
      > A small Changelog improvement
      > Cleanup Changelog for the next release
      > Make it possible to access functions that were inherited, see #1347
      > Messed up a Windows test
      > Again a small windows issue fixed.
      > Need to escape the path backslash for windows slashes
      > Make it possible to access properties again
      > A small compatibility fix
      > Fix an issue with type vars that might have been a problem for other things as well
      > Don't add quotes after paths if they are already there
      > A small speed optimization that helps a lot with sys.version_info >= (3, 0) patterns in typeshed
      > Remove an unnecessary isinstance usage
      > Make CompiledValue lazy
      > A python 2 fix
      > Fix an error that occured because of some refactorings
      > Fix one more os.path.join issue
      > Fix more issues with os.path path completion
      > Make join detection much easier
      > Fix some remaining issues with file path completions
      > A few more tests for path completions (join)
      > Fix quote completions for os.path.join path completions
      > Fix first param argument of os.path.join file completions
      > Fix arglist/trailer issues
      > in os.path.join completions, directories should not end in a slash
      > Make some file path completions in os.path.join work
      > Fix os.path.join static value gathering
      > os.path.sep should always have a clear value
      > Fix string name completion for stuff like dirname and abspath
      > Fix bytes issue with file path adding
      > Python 2 compatibility
      > Make __file__ return the correct value
      > Fix string additions when used in certain ways
      > Make string additions work for file path completion
      > Fix interpeter project path
      > Fix the REPL completer for file path completions
      > Fix a few more file name completion cases
      > A first iteration for file path completions
      > Fix a test failure
      > Add Definition.execute, fixes #1076
      > Add tests to show that #516 is not working, yet
      > List possible Definition.type in its docstring, fixes #1069.
      > Start writing the Changelog for 0.15.0
      > 3.8-dev should not be allowed to fail
      > Skip more Python 2 tests
      > Skipping of tests was done the wrong way again
      > Skip the right tests
      > Parameter.kind is not avaialble in Python 3.5
      > Fix Python 2 test issues
      > Add a few docstrings to make some things clearer
      > Add ParamDefinition.kind, fixes #1361
      > Make it possible to format a param to a string, fixes #1074
      > Add another test for signature annotations
      > Add Signature.to_string() with proper tests, fixes #779, fixes #780
      > Test infer_default
      > Use a helper to create definitions
      > Add a execute_annotation option to infer_annotation
      > Test infer_annotation
      > Make it possible for users to infer annotations/defaults
      > A first iteration of adding signatures to the API, fixes #1139
      > Fix a caching issue
      > Forgot the right resolve_stars parameters in one place
      > Cache getting resolved param names
      > Turn around resolve_stars, it shouldn't by default be resolved
      > Remove a class that is not needed anymore
      > Revert "Use __str__ instead of to_string"
      > Fix the last remaining issues with function signature
      > overloaded_functions should be private
      > Use __str__ instead of to_string
      > Better repr for CallSignature
      > Fix some minor signature issues
      > Remove the unused function signature_matches
      > Fix signatures for __init__ calls when used with supers, fixes #1163
      > Fix some issues for args resolving in method calls
      > Remove a bit of code that i sprobably unused
      > Move get_signatures from Function to FunctionMixin
      > Merge the signature changes
      > Remove an import
      > Small refactoring
      > Skipped Python 2 Interpreter tests the wrong way
      > Remove a paragraph in docs that was arguing that stubs and generics (and other things) were not properly supported, fixes #1012
      > Fix partial signatures for MixedObject
      > Fix partial signatures, fixes #1371
      > Make sure with a test that the staticmethod signature is also correct
      > Fix classmethod signature, fixes #498
      > Deal with annotation on *args and **kwargs correctly, fixes #980
      > Use LazyContextWrapper more
      > Very small refactoring
      > Fix for failing assertion on native modules Issue #1354 (#1370)
      > Skip numpydoc tests for Python 2
      > Remove code that didn't mean anything
      > Fix docstrings for wrapped functions, fixes #906
      > Fix an isue about dict ordering in Python before 3.6.
      > Make it clearer when get_param is used.
      > A small dataclass refactoring
      > Evaluate annotations for dataclasses when infer is called on param
      > Get inheritance of dataclass right
      > A first working iteration of dataclass signatures, fixes #1213
      > Remove an unused function
      > Dataclass progress
      > Add enum changes to changelog
      > Fix a recursion error about getting metaclasses
      > One test about recursion issues only applied to Python 2
      > Use class filters in instances differently so metaclass plugins work, fixes #1090
      > First step in working with metaclasses in plugins, see #1090.
      > Refactor the plugin registry
      > Remove classes from plugins and use decorators instead
2019-08-12 00:16:06 +02:00
Daniel Hahler
b9f8317595 Update submodule pythonx/jedi 454447d4...60415033
* pythonx/jedi 454447d4...60415033 (54):
      > Prepare the v0.14.1 release
      > Use fixture names everywhere
      > Cleanup a test file
      > Use parametrize instead of TestCase
      > Remove a TestCase class usage
      > Use pytest.mark.parametrize for something instad of a class
      > Use the names fixture even more
      > Use the names fixture more
      > A small rename
      > Refactor names tests
      > A small refactoring
      > Make sure __wrapped__ works properly when using an Interpreter, fixes #1353
      > Small refactoring
      > Make API param names appear without leading double underscores, fixes #1357 again
      > Fix some call signature tests
      > Make expected index work in Python 3
      > Test both closing brackets and non-closing brackets for CallSignature.index
      > Fix a case with errors
      > Move some code around
      > Fix some kwargs cases
      > Fix some *args issues
      > Deal better with some error nodes
      > Delete unused code
      > Fix some error node handling for call signatures
      > Fix CallSignature index for a looot of cases, fixes #1364,#1363
      > Use recursion rather than other stuff
      > Even more refactorings
      > small name refactoring
      > Refactor some call details
      > Disable a test for Python 2
      > Fix pow() signature, fixes #1357
      > Merge branch 'master' of github.com:davidhalter/jedi
      > Fix signature to_string
      > Fix an issue with keyword params, fixes #1356
      > Simplify some test code for param defaults, see #1356
      > Merge branch 'function_signature_in_interpreter' of https://github.com/linupi/jedi
      > Improve a bit of dataclasses support, so at least the attributes can be seen
      > Make sure in tests that pep 0526 variables are also able to be used when using self, see #933
      > Get typing.NewType working (#1344)
      > Cannot use pytest 5 yet
      > Fix filters for classes and functions
      > Fix some small things to get more tests passing
      > A better repr for Definition
      > Merge branch 'master' of github.com:davidhalter/jedi
      > Fix ClassVar filter for instances
      > Keyword completions are no longer possible directly after a number, fixes #1085
      > Fix super call goto for multiple inheritance, fixes #1311
      > goto should always goto definitions, fixes #1304
      > Fix star imports checks, fixes #1235
      > Actually import IsADirectoryError
      > Add 3.8 to supported versions
      > Fix project search if a directory is called manage.py, fixes #1314
      > Return annotations for compiled objects now help to infer
      > Update parso requirement
0.10.0
2019-07-13 20:21:56 +02:00
Daniel Hahler
d3f40d13ec Update submodule pythonx/parso 59df3fa...c0ace63
* pythonx/parso 59df3fa...c0ace63 (9):
      > For Python 2.7 and 3.4 pytest 5 doesn't work anymore
      > Prepare the 0.5.1 release
      > Fix name tokenizing for Python 2
      > Fix positioning for names that are interleaved with error tokens
      > Merge branch 'master' of github.com:davidhalter/parso
      > Fixed name tokenizing issues for tamil characters, fixes davidhalter/jedi#1368
      > Document that the cache uses pickle files
      > Fix changelog dates, fixes #77
      > Try to use collections.abc.Mapping instead of collections.Mapping
2019-07-13 20:21:56 +02:00
Dave Halter
016fb7c78e Merge pull request #915 from davidhalter/typeshed
With typeshed coming to Jedi, builtin modules should be displayed
2019-06-23 01:13:14 +02:00
Dave Halter
e736eea934 Use staticmethod for call signature tests instead of str
str has different signatures for Python 2 and 3 and is therefore annoying to test.
2019-06-21 00:28:18 +02:00
Dave Halter
6c6b4dcf92 Make sure that formatting happens on unicode 2019-06-20 23:56:46 +02:00
Dave Halter
73289427ba Modules should be accessible if column is not None 2019-06-20 23:46:34 +02:00
Dave Halter
1a053d2a23 Fix some call signature tests 2019-06-20 23:37:43 +02:00
Dave Halter
636ad08d32 Get rid of documentation about pip install jedi
pip install jedi doesn't work with properly with virtualenvs, if jedi-vim is
used.
2019-06-20 23:15:16 +02:00
Dave Halter
d32962f3b2 Upgrade Jedi to 0.14.0 and parso to 0.5.0 2019-06-20 22:38:57 +02:00
Dave Halter
717446dd71 For whatever reason tabs were used as indentation 2019-06-17 20:52:31 +02:00
Dave Halter
9c9a513aaf Add a goto_stubs command 2019-06-16 09:39:50 +02:00
Daniel Hahler
69aa410afa Fix :JediClearCache!
Parso's cache can be cleaned from Jedi now.
2019-04-28 21:19:39 +02:00
Daniel Hahler
914754a04e Disable smart_auto_mappings by default
Ref: https://github.com/davidhalter/jedi-vim/issues/568
2019-04-06 01:02:23 +02:00
Dave Halter
f26b2a8802 Change supported Python version in docs 2019-03-22 12:40:28 +01:00
Daniel Hahler
d879d2f216 jedi#show_documentation: check len of g:jedi#documentation_command 2019-03-22 12:35:43 +01:00
Dave Halter
23c14f6826 With typeshed coming to Jedi, builtin modules should be displayed
(If there's a module_path (which most will have)).

This change is still backwards compatible and can be used with older Jedi
versions (<0.14.0).
2019-03-09 13:35:56 +01:00
Dave Halter
1f7e661d9d Upgrade parso 2019-02-24 18:59:53 +01:00
Dave Halter
c6fe4fee76 Upgrade Jedi to latest 2019-02-24 18:59:29 +01:00
Dave Halter
ea5e87a703 Remove jedi.NotFoundError, because that was removed quite a while ago, see #899 2019-02-17 18:04:15 +01:00
Henré Botha
d02a72e792 Update Python version in README (#911)
As per the author's comment here, Python 2.6 is no longer supported. https://github.com/davidhalter/jedi-vim/issues/866#issuecomment-409852888
2019-02-12 14:30:02 +01:00
Daniel Hahler
42d24387ac Update parso to 0.3.3 (#909)
Update submodule pythonx/parso a2b153e...f1ee761

    * pythonx/parso a2b153e...f1ee761 (6):
      > Release of 0.3.3
      > Rename a test
      > Remove some unused code
      > Fix working with async functions in the diff parser, fixes #56
      > Fix bytes/fstring mixing when using iter_errors, fixes #57.
      > Improve a docstring, fixes #55.
2019-02-06 13:09:45 +01:00
Stevan Milic
ba5915bf26 Fix rename with folds: replace line in buffer directly (#906)
Fixes #789
2019-02-05 20:28:46 +01:00
Daniel Hahler
c5c13d69d6 ci: Travis: Ubuntu Xenial, and pynvim (#908) 2019-02-05 20:03:33 +01:00
Daniel Hahler
f36749776d Update parso to v0.3.2
Update submodule pythonx/parso 930ec08...a2b153e

    * pythonx/parso 930ec08...a2b153e (91):
      > Upgrade the Changelog
      > Escape a backslash properly
      > Bump the parso version to 0.3.2
      > f-string parts are also PythonLeaf instances
      > Fix get_start_pos_of_prefix
      > Remove dead code
      > Refactor f-string support
      > Fix: End detection for strings was mostly wrong, fixes #51
      > Fix f-string escapes, fixes #48
      > Tokenizer: Simplify end of string regexes
      > Add a comment from the Python3.7 code base
      > Fix diff parser: The previous fix was a bit off
      > Change fuzzer: Add ways to not always use correct parse input
      > Fix diff parser: issue with opening brackets
      > Async doesn't work in 3.4
      > Skip some tests for Python2.6 and Python3.3
      > Fix diff parser: DEDENT as error leaves should also be ignored and reparsed
      > Fix diff parser: error dedents in between nodes should be ignored for now when copying
      > Fix diff parser: Don't copy error nodes/leaves in the beginning, leads to strange issues in some cases
      > Diff fuzzer: Create a check to see if the errors make sense.
      > Fix diff parser: Don't copy DEDENT tokens at the beginning
      > Fix diff parser: Skip last leaves for last line offset leaves
      > Fix indentation error tokens
      > Fix diff parser: Avoid side effects for prefix
      > Fix tokenizer: backslashes sometimes led to newline token generation
      > Make lines easier copyable in the fuzzer
      > Fix tokenizer: Carriage returns after backslashes were not properly handled
      > Fix in diff parser: prefix calculation was wrong when copying nodes
      > Replace --print-diff with --print-code
      > Fix diff parser generation for empty files
      > Docopt should not be needed for tests
      > Fix tokenizer: Form feeds and multiline docstrings didn't work together
      > Fix diff parser: Need to calculate the prefix for the diff tokenizer better
      > Remove copied nodes stuff, to simplify some things
      > Fix newline endings and a few parser/copy counts
      > Feature: The diff parser fuzzer is now able to use random Python fragments
      > Fix: The Python 3.8 grammar did not include f-string support
      > Fix tokenizer: Closing parentheses in the wrong place should not lead to strange behavior
      > Fix end positions with error dedents
      > Fix diff parser tests for Python 2
      > Randomize the fuzzer a bit more with inserting characters
      > Simplify the regexes
      > Fix a regex clause that was totally wrong
      > Fix another tokenizer issue
      > Apply \r changes in syntax trees
      > Actually make \r usable
      > Fix split lines for Python code
      > Add \r as a valid linebreak for splitlines
      > Move split_lines tests around
      > Start generating really random strings with the fuzzer
      > Fix tokenizer: Dedents before error tokens are properly done, now.
      > Fix diff parser: Also check async with
      > Make the diff parser use a lot of different files by default
      > Fix diff parser: Forgot that with statments are also flows
      > Fix valid graph asserting for some dedents that are errors
      > Fix diff parser: If funcs are not copied, errors shouldn't either
      > Better documentation for the fuzz diff parser script
      > Rename a test
      > More verbose output for the diff fuzzer
      > Fix diff parser: error dedent issues
      > Fix diff parser: Avoid indentation issues
      > Use the right diff order in debug output
      > Fix diff parser: The prefix was wrong in some copy cases
      > Make fuzz parser compatible with Python 2
      > Make it possible to print all diffs in fuzzer
      > Introduce a redo flag 'only_last' to narrow down issues
      > Add docopt to testing dependencies
      > Rewrite the fuzz diff parser to cache errors (so we can re-run those)
      > Fix diff parser: Decorators were sometimes parsed without their functions
      > Fix tokenizer: Dedents should only happen after newlines
      > Usability for diff parser fuzzing
      > Fix for diff parser: Rewrite prefix logic and don't mutate prematurely
      > Fix diff parser: positioning of functions if decorators were removed
      > Ignore ERROR_DEDENT in graph validation
      > Add a small diff parser fuzzer
      > Fix diff parser: get_last_line was sometimes wrong
      > Fix error reporting order for diff issues
      > Clean up the test diff parser file
      > Avoid nasty side effects in creation of Node
      > Make parso errors even more informative
      > Fix diff parser get_last_line calculation
      > Fix graph asserting for error indents
      > Better checks for checking valid graphs
      > Create better ways for debugging the diff parser
      > Fix diff-parser: Copying parts of if else should not lead to the whole thing being copied
      > Reenable diff parser parser counting in all tests
      > Fix: Make the NodesStack to a NodesTree
      > Fix for diff parser : Make sure that start_pos are growing always The problem was that functions/classes were sometimes not well positioned. Now all diff tests are ensuring that leaves always grow.
      > Add a check to see if leaves have the right start positions
      > Add parso version to an exception
      > MNT: add grammar for python 3.8
2019-01-25 01:21:33 +01:00
Brian Mego
7f4f2db260 Fixes incorrect documentation 2018-12-03 23:51:19 +01:00
Daniel Hahler
2f65c636f8 ftplugin: do not duplicate jedi_usages autocommands (#883)
Fixes https://github.com/davidhalter/jedi-vim/issues/882.
2018-11-08 08:43:28 +01:00
Daniel Hahler
b6dfc5fd49 Update submodule pythonx/parso e6bc924...930ec08
* pythonx/parso e6bc924...930ec08 (7):
      > Use SVG badges
      > tox.ini: simplify deps
      > tox: add pypy to envlist for tox-travis
      > setup.py: add "testing" extras_require
      > Add Python 3.7 stable to test matrix and update classifiers
      > Update usage.rst
      > Don't use invalid escape sequences in regex, see https://github.com/davidhalter/jedi-vim/issues/843
2018-10-14 17:55:56 +02:00
Daniel Hahler
2a43448f3b Update submodule pythonx/jedi a79a1fb...bd1010b
* pythonx/jedi a79a1fb...bd1010b (91):
      > Create a new 0.13.1 release
      > Fixed completions of global vars and tensorflow slowness, fixes #1228, #1116
      > The changelog date was wrong
      > Release notes for 0.13.0
      > Fix tensorflow issues with a few hacks (temporary), fixes #1195
      > If the VIRTUAL_ENV variable changes, need to reload the default environment, fixes #1201, #1200
      > Return SameEnvironment as a default, fixes #1226, #1196
      > Document that using the REPL autocompletion is only available on Linux/Mac, fixes #1184
      > Fix an issue with f-strings, fixes #1224
      > Ignore some errors that are happening when the Python process ends and its subprocesses are cleaned up
      > also remove crashes with pep 448 unpacking of lists and sets
      > Fixed crash (and now recognises correctly) {**d, "b": "b"}["b"]
      > Recognize {**d} as a dict instead of set
      > Add extras_require=testing
      > _get_virtual_env_from_var: use safe=False
      > tests: venv_path: use session scope
      > jedi/api/environment.py: minor flake8 fix
      > jedi.api.environment._SUPPORTED_PYTHONS: add 3.7
      > Removing a test from doctests, becaues it shouldn't be one
      > Refactor argument clinic usage
      > With the recent changes one performance optimization got lost
      > FunctionExecutionContext should use the parent if possible
      > Use anonymous instance arguments in a different way
      > Move some anonymous instance function execution stuff
      > Get rid of InstanceFunctionExecution, because it's really not needed
      > Use the InstanceArguments for super as well
      > Use InstanceArguments directly and not via InstanceFunctionExecution
      > Remove old garbage code
      > Don't use arguments that are not needed
      > Also move the remaining get_params to get_executed_params
      > get_params -> get_executed_params where possible
      > Subprocess error reporting improvements
      > Fix a recursion issue about compiled objects
      > Use a CompiledInstanceNameFilter that wraps the class name as well
      > Prefer Python 3 import over 2
      > Now it's actually possible to specify a pytest environment for the same Python version
      > Note that Python 3.3 support was dropped in Changelog
      > Drop support for EOL Python 3.3 (#1019)
      > Rewrite the pyc test
      > Fix an issue with stderr debugging of subprocesses
      > stderr of the child processes should be printed in debug output
      > Use close_fds for posix.
      > Remove some redundant code
      > Use names of classes to infer names of instances
      > Don't have execute and execute_evaluated on name
      > Fix an issue where __ prefixed variables where not hidden when accessed from a class
      > Bound methods are now working correctly in all Python versions. Therefore a test was wrong.
      > Remove a print in tests
      > BoundMethods now have access to the function that they are using
      > Remove another usage of is_class where it's not needed
      > FunctionContext should be created from a unified interface
      > Don't create a FunctionExecutionContext if it's not used.
      > Use TreeContext in a good way
      > Fix broken link in documentation
      > The implicit namespace package test from 4b276bae87a3170672f7ddb3e00f5851fe24d562 can only be used for Python 3.4+
      > The import resolution for namespace packages was wrong
      > Add a way to use the interpreter environment for tests
      > MergedExecutedParams -> DynamicExecutedParams
      > Fix a recursion error, fixes #1173
      > Remove two recursion tests again that will belong into a commit at a point where it is not failing anymore
      > Don't merge params if it's just one param
      > Add a repr for AnonymousArguments
      > Fix a doctest
      > Some minor flake8 fixes
      > Script.__repr__: include environment
      > Add params to CallSignature.__repr__
      > Environments are now always created on request
      > Improve Environment
      > Add max line length 100 to the config for flake8
      > tests: use monkeypatch.setenv
      > Don't test Python 3.3 on appveyor anymore, it's getting really hard to get all the right dependencies for it, because 3.3 is deprecated everywhere.
      > Mention that it's ok to have a line length of 100 characters in our files.
      > Don't use invalid escape sequences in regex, see https://github.com/davidhalter/jedi-vim/issues/843
      > subprocess: listen: exit normally with EOFError
      > Script: improve ValueError for column
      > The sys path might be lazy or not in a venv
      > The encoding parameter should be used again (includes test), fixes #1167
      > Remove source_encoding from documentation (see #1167)
      > Actually use the fast_parser setting again
      > Use an import name list as long as possible
      > Different _load_module API
      > Directly load modules if possible, with this it's not necessary anymore to use dotted_from_fs_path, also fixes #1013.
      > Don't mutate the sys.path. This is pretty nasty bug that fixes #1148
      > Don't follow builtin imports anymore by default when follow_imports is on (goto)
      > Add a changelog entry for the include_builtins change
      > additional_module_paths in usages never actually worked
      > Add include_builtins to usages, fixes #1131.
      > Finally make it possible to use auto_import_modules for packages
      > Test auto_import_modules in a very basic way
      > Fix a bug about fstring completion
      > Comprehensions are also possible arguments. Fixes 1146
2018-10-14 17:55:56 +02:00
Daniel Hahler
c6f05cd82c .coveragerc: concurrency = greenlet (#874)
Fixes https://github.com/neovim/python-client/issues/354
2018-08-16 16:37:00 +02:00
Daniel Hahler
132d8506ab tests: move/rename/cleanup vspec based tests (#860)
The main motivation is to being able to use normal/other pytest based
tests.

Therefore this moves everything from conftest into test_integration
itself.
2018-08-01 23:57:37 +02:00
Daniel Hahler
399c57ff72 Fix displaying of error information with shortmess+=F
When being initialized via ftplugin `set shortmess+=F` (default in
Neovim by now) causes the additional information (the full traceback) to
be silenced.

This patch uses `:unsilent` to always display it.

Ref: https://github.com/neovim/neovim/issues/8675
2018-08-01 22:50:23 +02:00
Daniel Hahler
1126ffde9b Makefile: make pip-install quiet 2018-08-01 22:50:23 +02:00
Daniel Hahler
88502891ba Report coverage (#863) 2018-07-30 22:45:06 +02:00
Dave Halter
b33392c8c8 Merge pull request #864 from blueyed/nvim (neovim testing)
Testing is now alow possible with Neovim
2018-07-30 18:09:45 +02:00
Daniel Hahler
ffec4d7fc5 Test with Neovim 2018-07-30 14:24:53 +02:00
Daniel Hahler
43a9a9b191 Fix test/signatures.vim: ensure there is no indent (nvim) 2018-07-30 14:24:53 +02:00
Daniel Hahler
e05f34646e Fix test/signatures.vim: take into account &ruler (nvim) 2018-07-30 14:24:53 +02:00