Dave Halter
c12dbe0b9e
Fix a few tests that failed, because they were not correct python (the context was wrong).
2016-05-30 20:10:17 +02:00
Dave Halter
4f6368e7eb
Now ErrorLeaf and ErrorNode are part of the syntax tree. This makes probably sense. The documentation will follow once it's clear how they will shape out.
2016-05-30 00:34:58 +02:00
Dave Halter
daa68b66ad
Fix a few issues caused by the refactoring.
2016-05-29 19:49:35 +02:00
Dave Halter
feef45f4bb
Fixed all on_import tests.
2016-05-29 12:08:53 +02:00
Dave Halter
2700c2cca4
Make it possible to import Jedi in Python 2 again.
2016-05-28 20:20:45 +02:00
Dave Halter
4714b464a6
Further import completion improvements.
2016-05-28 02:08:43 +02:00
Dave Halter
e4fe2a6d09
Now some other tests are working again.
2016-05-26 00:35:56 +02:00
Dave Halter
cbba314286
Progress and actually passing a few tests.
2016-05-26 00:10:54 +02:00
Dave Halter
d4a10929e2
Starting to create a way of how context sensitive completions can be made.
...
This involves playing heavily with the parser pgen2. We use its stack to check for all possible tokens/keywords.
2016-05-23 18:11:44 +02:00
Dave Halter
36a135c347
pgen2: Don't overwrite type
2016-05-21 16:08:12 +02:00
Dave Halter
479b3cfab2
More completion refactoring. Getting the structure for filtering names right.
2016-05-19 12:41:59 +02:00
Dave Halter
5059febed4
Fix an issue with a wrongly refactored name.
2016-05-19 11:49:59 +02:00
Dave Halter
055ff8be23
Readability for completion parts.
2016-05-19 11:33:17 +02:00
Dave Halter
323581e253
Refactor the completion module.
2016-05-19 11:13:42 +02:00
Dave Halter
cfa65a22fa
Move the completion specific parts to api/completion.py.
2016-05-19 11:08:37 +02:00
Dave Halter
2e33394adb
Move the type inference call of the api to inference.py
2016-05-19 10:40:22 +02:00
Dave Halter
da6486dc6d
Start moving api stuff to the inference module.
2016-05-19 10:25:36 +02:00
Dave Halter
a08ad2d53d
Further improvements to the interpreter refactoring.
2016-05-19 01:41:06 +02:00
Dave Halter
1bb8d32084
Improve interpreter tests.
2016-05-18 11:56:33 +02:00
Dave Halter
d93d31feb8
Make a first test working with mixed objects.
2016-05-18 11:49:50 +02:00
Dave Halter
ef314a5c38
Complete writing the full mixed objects module.
2016-05-17 17:44:22 +02:00
Dave Halter
5595fb3e2f
Start adding a module that mixes compiled and parser objects.
2016-05-16 13:12:45 +02:00
Dave Halter
33accb3dc6
It should be possible to pass class.__dict__ to Jedi.
2016-05-16 09:52:45 +02:00
Dave Halter
e21b3024e0
Writing tests for the upcoming side effect fixes in the interpreter completion.
2016-05-16 09:36:54 +02:00
Dave Halter
818730d6ea
Fix descriptions for REPL.
2016-05-15 23:32:16 +02:00
Dave Halter
50f6bb0299
When we are working with CompiledObjects and instances there should never be a case where class values are returned.
2016-05-15 23:06:07 +02:00
Dave Halter
cc331d62e0
Get closer to fixing a lot of issues with the completion for repl.
2016-05-15 14:26:22 +02:00
Dave Halter
beeffd2dcd
Some pgen2 tests were always skipped.
2016-01-07 18:55:10 +01:00
Dave Halter
379eb440cd
Fix: the parent setting of deep_ast_copy worked the wrong way.
2016-01-07 18:52:06 +01:00
Dave Halter
06cb82830a
builtin_methods calculation of iterable works now with the mro.
2016-01-07 15:41:20 +01:00
Dave Halter
8216ff3b11
Merge branch 'linter' of github.com:davidhalter/jedi into linter
2016-01-07 12:30:45 +01:00
Dave Halter
438ba3e14a
Ellipsis is still be valid in 2.6/2.7 (for now).
2016-01-07 11:01:00 +01:00
Dave Halter
cb7ee00c75
Forgot to include precedence tests.
2016-01-07 10:43:31 +01:00
Dave Halter
43ad4cfeb8
Ellipsis comparisons are working now. Ellipsis was previously ignored.
2016-01-07 10:41:34 +01:00
Dave Halter
5cc27f632d
Improve dict comprehension support.
2016-01-02 21:46:14 +01:00
Dave Halter
0acc5256ea
Implement imitate_items(), which helps if you use {}.items().
2016-01-01 12:43:07 +01:00
Dave Halter
4e93fb344b
Dict.values is working now on dict literals.
2015-12-27 23:53:56 +01:00
Dave Halter
48f41c5231
Create a way to register builtin methods the iterable module.
...
With this it's possible to e.g. register a function Array.dict_values as 'dict.values' with all the proper name resolution stuff.
2015-12-27 23:02:37 +01:00
Dave Halter
c0f7e9f820
Fix an issue with predefined_if_name_dict.
2015-12-27 17:30:40 +01:00
Dave Halter
03eaf8455f
Dict comprehensions are working partially.
2015-12-27 17:20:49 +01:00
Dave Halter
b3f7d0c29a
Get Set comprehensions working.
2015-12-27 15:37:27 +01:00
Dave Halter
b479e157fc
Fix an issue in YieldExpr.
2015-12-26 11:39:37 +01:00
Dave Halter
ef3a83a74e
Add a link in the finder docstring on how to understand name resolution.
2015-12-26 10:41:26 +01:00
Dave Halter
e34c0b336c
Add an acknowledgement section in the README. Thank @tkf, @dbrgn and @gvanrossum for their contributions.
2015-12-26 03:32:50 +01:00
Dave Halter
cd5701cd41
Clean up licensing a bit.
2015-12-26 03:24:01 +01:00
Dave Halter
2a691eefff
Including pgen2 tests from the cpython repo.
2015-12-26 03:15:09 +01:00
Dave Halter
507ddfa4b0
Add the Python 3.5 syntax file.
2015-12-26 03:10:59 +01:00
Dave Halter
ab5d0ed72b
Starting with Python 3.4 from is not a token that always is a "new" statement.
2015-12-26 02:47:22 +01:00
Dave Halter
eb2e41f771
Grammar versioning has now a smoother interface.
2015-12-25 19:30:25 +01:00
Dave Halter
a373e34229
The parser without error recovery raises an error now if he's not able to parse something.
2015-12-25 18:53:05 +01:00
Dave Halter
6bad5a924b
Making it possible for static analysis tests to be skipped if the python version doesn't match.
2015-12-22 17:37:28 +01:00
Dave Halter
515d096d33
The alternative test runner script shouldn't run on skipped tests.
2015-12-22 11:45:24 +01:00
Dave Halter
936cef97e9
Fix param position lookups. Also forward annotations have the correct resolution path now (starting at the end of the file).
2015-12-22 11:25:32 +01:00
Dave Halter
ac294244cf
Remove legacy code from FunctionExecution.
2015-12-22 07:37:09 +01:00
Dave Halter
8201fdc5af
Merge branch 'pep484' into linter
2015-12-20 23:19:10 +01:00
Dave Halter
c15551ccc1
Errortokens should also make the parser fail in the normal parser.
2015-12-20 23:11:52 +01:00
Dave Halter
5791860861
Actual forward reference annotations are working pretty smooth now.
2015-12-20 22:57:41 +01:00
Dave Halter
c4906e0e3f
Rework the parser so we can use arbitrary start nodes of the syntax.
...
This also includes a rework for error recovery in the parser. This is now just possible for file_input parsing, which means for full files.
Includes also a refactoring of the tokenizer. No more do we have to add an additional newline, because it now works correctly (removes certain confusion.
2015-12-20 22:25:41 +01:00
Dave Halter
9a93d599da
Fix: __module__ doesn't need to be properly defined.
2015-12-20 02:35:23 +01:00
Dave Halter
b2a691a69a
PEP 484 support also means that we should evaluate comments in the future.
2015-12-19 11:10:05 +01:00
Dave Halter
a2905ae078
Implement get_parent_until for Comprehension.
2015-12-18 23:18:21 +01:00
Dave Halter
e73b1a683a
Tests for python2 print statement.
2015-12-18 17:57:25 +01:00
Dave Halter
23f40d8998
Merge branch 'linter' of https://github.com/reinhrst/jedi into pep484
...
Conflicts:
AUTHORS.txt
2015-12-17 23:46:20 +01:00
Dave Halter
cc3c538d9d
Merge branch 'buildout-unicode-decode-error' of https://github.com/mfussenegger/jedi into linter
2015-12-17 12:50:26 +01:00
Dave Halter
54b1b2be74
Fix: flow analysis crashed when using in combination with different modules.
2015-12-17 12:37:26 +01:00
Dave Halter
3d79d0994e
Fix: is_class() on Instance was not implemented.
2015-12-15 16:44:28 +01:00
Dave Halter
ab91cfa3b5
Fix: print_stmt was not actually cared for in Python 2.7, #662 .
2015-12-15 13:08:37 +01:00
Dave Halter
7141158484
Merge master into linter.
2015-12-15 12:28:38 +01:00
Dave Halter
c85426ebac
More detailed testing for value-error-too-few-values.
2015-12-14 06:54:02 +01:00
Dave Halter
7b8d4e86ac
The evaluator recursion limitations are now reset in static analysis for each node, otherwise it's incredibly unprecise.
2015-12-13 17:18:19 +01:00
Dave Halter
106f6f7f5a
too many values and too few values errors implemented for list comprehensions tuple unpacking.
2015-12-12 14:09:57 +01:00
Dave Halter
28585dcdba
Better testing of classes.
2015-12-12 02:48:37 +01:00
Dave Halter
75ac2b9686
Enable better ways for analysis to analyze loop variables.
2015-12-11 20:25:49 +01:00
Dave Halter
8d3be10270
Fix issues in Python 2.7.
2015-12-10 17:20:21 +01:00
Dave Halter
a1410de9e8
Better description of the py__XXX__ attributes.
2015-12-10 16:53:08 +01:00
Dave Halter
1189868593
Use CheckAttribute descriptor more in CompiledObject to avoid duplicate code.
2015-12-10 16:43:42 +01:00
Dave Halter
5087584fdc
evaluator is now used only as an attribute in CompiledObject.
2015-12-10 16:40:56 +01:00
Dave Halter
9e8da17688
Remove py__class__ evaluator param from representation objects.
2015-12-10 16:39:27 +01:00
Dave Halter
afb1d6c3b8
Remove evaluator param from py__call__.
2015-12-10 16:20:46 +01:00
Dave Halter
506d5a4f31
Remove evaluator param from py__bases__.
2015-12-10 16:16:30 +01:00
Dave Halter
98b1845784
Remove evaluator param from py__mro__.
2015-12-10 16:12:43 +01:00
Dave Halter
b16fd84628
Remove py__getattribute__.
2015-12-10 16:07:15 +01:00
Dave Halter
9bac88100a
Get rid of get_exact_index_types.
2015-12-10 15:58:34 +01:00
Dave Halter
b10a048167
Get rid of Array.values() and Array.__iter__().
2015-12-10 15:56:45 +01:00
Dave Halter
3a975db0d7
Get completely rid of get_index_types.
2015-12-10 04:41:21 +01:00
Dave Halter
058779dd42
Get completely rid of iter_content.
2015-12-10 04:38:59 +01:00
Dave Halter
9bd6e6c340
Fix: iterators are working smoothly now. Finally tests are passing again.
2015-12-10 04:37:23 +01:00
Dave Halter
e23f453a11
Fix all remaining issues from the compiled refactoring except static analysis.
2015-12-10 01:48:08 +01:00
Dave Halter
86037222b4
Fix: stdlib issues with the latest CompiledObject changes.
2015-12-10 00:02:06 +01:00
Dave Halter
c9a5caa96e
Fix: dicts lookups were not working in all cases.
2015-12-08 22:37:30 +01:00
Dave Halter
bef5fca516
Refactor compiled.CompiledObject so it always owns an evaluator instance.
2015-12-08 02:19:33 +01:00
Dave Halter
18a10c436f
Simplify names_dict lookups for Arrays.
2015-12-06 03:16:21 +01:00
Dave Halter
1b634d77af
Add ranged test execution for alternate test runner.
2015-12-06 03:03:11 +01:00
Dave Halter
ffeedb32de
Fix remaining issues with FakeDict.
2015-12-05 22:33:41 +01:00
Dave Halter
2008775370
Fix an issue with dict lookups.
2015-12-05 20:40:41 +01:00
Dave Halter
3910d97b7e
Fix: __getitem__ sometimes didnt evaluate all the types.
2015-12-05 12:36:05 +01:00
Dave Halter
d65684a40b
Fix py__getitem__ on Array.
2015-12-05 02:48:20 +01:00
Dave Halter
db060c70c9
Start creating py__getitem__.
2015-12-04 12:08:29 +01:00
Dave Halter
76345c0b58
Final fixes for pure usage of py__iter__.
2015-12-04 00:15:48 +01:00
Dave Halter
5f36019752
Added isinstance tests in static analysis.
2015-12-03 16:21:00 +01:00