Commit Graph
100 Commits
Author SHA1 Message Date
Dave Halter 17a1a0ebfd Colorama 0.3.6 is buggy, so just don't import it if it's not there. 2016-01-28 14:39:18 -02:00
Dave Halter 7fe5280bda Forgot to include all tox dependencies. 2016-01-27 19:01:33 -02:00
Dave Halter c09a916ab5 Didn't load grammar for Python 2.6 correctly. 2016-01-27 17:52:42 -02:00
Dave Halter 257009d238 Skip pep0484 tests when using Python 2.6. 2016-01-26 15:59:27 -02:00
Dave Halter 633e5aa76f The typing library only works in Python >= 2.7. 2016-01-26 15:05:58 -02:00
Dave Halter f9a64fd637 Fix some issues in Python 2.7 2016-01-26 14:59:40 -02:00
Dave Halter 3816f28dfa Merge pull request #663 from reinhrst/typing
PEP 484 typing library
2016-01-26 11:30:47 -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
Dave Halter 21faf2431a Added isinstance type checks in the linter. 2015-12-03 16:14:26 +01:00
Dave Halter 8daa0b8784 Introduce an additional node parameter for py__iter__ which helps static analysis. 2015-12-03 11:52:54 +01:00
Dave Halter f66b8138b7 Remove ordered_elements_of_iterable and get_iterator_types, because they are not used anymore. 2015-12-03 09:25:11 +01:00
Dave Halter 76bbc91ff9 Remove some stdlib stuff that only complicated things. 2015-12-02 13:46:13 +01:00
Dave Halter d835ffc5a3 Get rid of ordered_elements_of_iterable and use py__iter__ instead. 2015-12-02 13:39:22 +01:00
Dave Halter 9a2256f557 Fix issues with py__iter__types. 2015-12-02 07:11:36 +01:00
Dave Halter 41537a78e1 Fix: Array additions (append, insert) should not cause an additional py__iter__ entry if there's none. 2015-12-01 22:57:54 +01:00
Dave Halter 53dbdf22a2 Fix: In the py__iter__ version, we didn't respect __next__ being an option. 2015-12-01 19:55:13 +01:00
Dave Halter 37c21726e7 Fix: py__iter__ in dynamic list/set usages with empy params. 2015-12-01 18:35:12 +01:00
Dave Halter 0a10947ff0 py__iter__ for MergedArray. 2015-11-28 20:14:14 +01:00
Dave Halter 777ec7588c py__iter__ for ArrayInstance. 2015-11-28 19:35:14 +01:00
Dave Halter 55615fb3c1 unite returns a set now, this simplifies all the set(unite( calls. 2015-11-28 17:52:39 +01:00
Dave Halter 9259a432b7 Dicts should be iterated by its keys (__iter__). 2015-11-28 16:08:38 +01:00
Dave Halter 09f7930104 Start implementing py__iter__ for all classes. 2015-11-27 13:07:54 +01:00
Dave Halter 6f4ac70140 Issues with isinstance checks. 2015-11-27 12:22:02 +01:00
Dave Halter bc41ba7ca9 get_code now has a normalized variable. 2015-11-26 07:11:56 +01:00
Dave Halter a99368c421 Fix: elifs where not considered for isinstance type inference. 2015-11-25 22:14:23 +01:00
Dave Halter 9dbfb90c20 Fix: Nested flows user scope detection was wrong. 2015-11-25 21:36:17 +01:00
Dave Halter 17ab7bbc3d prepare_goto -> type_inference. 2015-11-25 07:11:48 +01:00
Dave Halter 59e4f567a2 Create a failing test for an issue probably with the parser. 2015-11-25 06:58:34 +01:00