1
0
forked from VimPlug/jedi
Commit Graph

564 Commits

Author SHA1 Message Date
Dave Halter fe9be9fe09 source_to_unicode -> python_bytes_to_unicode. 2017-08-15 20:09:48 +02:00
Dave Halter f9e31dc941 Refactor splitlines -> split_lines. 2017-08-15 19:55:50 +02:00
Dave Halter 2fcd2f8f89 Fix some more stuff because of newer parso changes. 2017-07-14 18:21:52 +02:00
Dave Halter 945a2ba405 Dedent some code to avoid issues with parso. 2017-07-09 00:27:23 +02:00
Dave Halter e0485b032e Fix some stuff to make parso work again. 2017-06-02 00:00:31 +02:00
Dave Halter 76529ca34d The parser_cache contents have changed. Therefore adapt. 2017-05-26 12:52:52 -04:00
Dave Halter 35e248091e Some more parso API changes. 2017-05-26 12:02:39 -04:00
Dave Halter 3015e7e60f Remove use_exact_op_types because the default changed. 2017-05-26 11:35:47 -04:00
Dave Halter 24cd603fcf Some more parso adaptations. 2017-05-26 09:08:34 -04:00
Dave Halter 3f36824a94 Parso changed load_python_grammar to load_grammar. 2017-05-25 12:41:19 -04:00
Dave Halter ef2e2f343e Fix some warnings. 2017-05-25 12:24:21 -04:00
Dave Halter b90589b62e Some changes because parso has changed. 2017-05-22 15:42:42 -04:00
Dave Halter f35f1b9676 Add the cache_path parameter to parso calls. 2017-05-20 10:08:48 -04:00
Dave Halter 50c7137437 splitlines and source_to_unicode are utils of parso. 2017-05-20 09:55:16 -04:00
Dave Halter 9bca3d39f5 Actually use parso now instead of Jedi. 2017-05-19 14:20:14 -04:00
Dave Halter 84d8279089 Import.paths -> Import.get_paths. 2017-05-07 15:47:34 +02:00
Dave Halter 63679aabd9 Replace Param.get_description with get_code and a parameter include_coma. 2017-05-01 02:19:42 +02:00
Matthias Bussonnier 6f1ee0cfa8 Use stacklevel in warnings or filters don't work.
In particular with the right stacklevel IPython will display the warning
if code is directly entered by the user. Without this info it does not.

Use the opportunity to add in the warning since when things are
deprecated. This leads to one less lookup of information for the user.
2017-04-29 20:13:19 +02:00
Dave Halter 7ca62578e1 Add py__doc__ as a better approach to docstrings. 2017-04-20 09:45:15 +02:00
Dave Halter b4631d6dd4 Progress in removing the docstring/call signature logic from the parser. 2017-04-18 18:48:05 +02:00
Dave Halter deb028c3fb Move get_statement_of_position out of the parser tree. 2017-04-15 02:23:08 +02:00
Dave Halter a0b65b52c6 used_names -> get_used_names(). 2017-04-12 08:56:11 +02:00
Dave Halter 545cb26f78 stars -> star_count. 2017-04-08 15:26:57 +02:00
Dave Halter 65a6c61dc6 Remove nodes_to_execute in favor of a function in parser_utils. 2017-04-08 12:59:49 +02:00
Dave Halter 632072000e Fix the builtin docstring issue that we've had. Fixes #859. 2017-04-03 00:27:31 +02:00
Andy Lee 1624f6945e Fix api.usages so it finds cross-module usages 2017-04-01 15:52:22 +02:00
Dave Halter a6829ca546 Use the cache variables in more straight forward fashion. 2017-03-31 23:10:39 +02:00
Dave Halter 1bb0c89f46 Remove source parameter from parser. 2017-03-31 21:44:43 +02:00
Dave Halter 35fd1c70bd Rename parser.utils to parser.cache. 2017-03-30 01:57:48 +02:00
Dave Halter 8059c3c2c8 Save a module instead of a parser when pickling. 2017-03-30 00:55:04 +02:00
Dave Halter 932703f04a Remove an import that is not needed anymore. 2017-03-28 02:09:38 +02:00
Dave Halter ee47be0140 Merge Parser and ParserWithRecovery. 2017-03-28 02:08:16 +02:00
Dave Halter 6a9c2f8795 Start using ContextualizedNode for py__iter__. 2017-03-28 01:34:07 +02:00
Dave Halter 8a35a04439 Remove the module path from the parser tree.
Some static analysis tests are still failing.
2017-03-27 18:13:32 +02:00
Dave Halter b60ec024fa Remove start_parsing completely from the Parsers. 2017-03-26 12:52:37 +02:00
Dave Halter 7874026ee5 A lot of work toward a better diff parser API. 2017-03-25 01:51:03 +01:00
Dave Halter 26cce4d078 Add the grammar as an argument to saving the parser.
This makes collisions of different grammars when loading from the cache impossible.
2017-03-22 18:32:49 +01:00
Dave Halter 2cb565561d Replace the diff parser imports with the modified path. 2017-03-21 22:10:01 +01:00
Dave Halter 9dedb9ff68 Don't start parsing in our own API. 2017-03-20 08:44:52 +01:00
Dave Halter 0f66a3c7a8 Remove the module attribute from the parser. 2017-03-18 03:53:34 +01:00
Dave Halter d0b6d41e99 Remove the old star import cache, because it's not even used. 2017-03-18 03:30:23 +01:00
Dave Halter 4573ab19f4 Separate the python syntax tree stuff from the non python stuff. 2017-03-16 19:54:08 +01:00
Dave Halter 448bfd0992 Move the python parser tree. 2017-03-16 17:20:32 +01:00
Dave Halter 97fc3bc23c Refactored the parser calls. Now it's possible to use jedi.parser.python.parse to quickly parse something. 2017-03-14 00:38:58 +01:00
micbou a859add6d7 Only resolve names for actual modules
A name can be part of an import statement without being a module.
2017-03-01 21:06:21 +01:00
Mathias Rav c809aad67f Complete dotted names properly in decorators
Outside decorators, a dotted name is parsed by the grammar as
stmt -> test -> power -> atom trailer -> (NAME) ('.' NAME)
where the first NAME is an 'atom' and the second NAME is a 'trailer'.

Thus, testing if the most recent variable is a 'trailer' and the most
recent node is a '.' is almost always enough for Jedi to properly
complete dotted names.

However, the grammar for decorators is more restricted and doesn't allow
arbitrary atoms and trailers; instead, a dotted name in a decorator is
decorator -> '@' dotted_name -> '@' (NAME '.' NAME),
meaning the most recent variable will be 'dotted_name', not 'trailer'.

Besides in decorators, the 'dotted_name' variable is only used in import
statements which are handled previously in _get_context_completions,
so checking for 'dotted_name' in this arm of the if only covers decorators
and not inadvertently anything else.
2017-02-04 18:05:15 +01:00
Dave Halter c5071f9f49 Change get_previous_leaf to return None if there is no leaf anymore (at the start of the file). 2017-02-03 17:23:15 +01:00
Dave Halter 445bf6c419 Get rid of get_parent_until. 2017-02-03 09:59:32 +01:00
Dave Halter 8027aeebd8 Fix a small bug that was raised two commits ago (in the test suite). 2017-02-02 23:50:29 +01:00
Dave Halter a5a54fbc85 Fix a call signature issue. 2017-02-01 19:21:07 +01:00