Commit Graph

4852 Commits

Author SHA1 Message Date
Claude
a5fc149f9d use jedi.common.unite in flatten array of sets 2016-01-17 10:57:38 +01:00
Claude
59161c0b5d fix FakeSequence type 2016-01-17 10:51:06 +01:00
Claude
9d7e1ce81b add the typing module for testing 2016-01-17 10:41:41 +01:00
Claude
1b787e2a11 add test to check instanciated subclasses 2016-01-17 10:41:41 +01:00
Claude
409ee5568a test with different ways of importing the typing module 2016-01-17 10:41:41 +01:00
Claude
3852431549 typing.Union and typing.Optional 2016-01-17 10:41:41 +01:00
Claude
7b97312509 tuples and mappings in typing 2016-01-17 10:41:40 +01:00
Claude
10f5e15325 I feel this is a nicer solution. Forward Reference busting should be part of the annotation resolving. It doesn not have anything to do with the typing module (and should indeed also happen if someone writes his own types outside of the typing module) 2016-01-17 10:41:40 +01:00
Claude
5948c63cf9 Make the classes descriptions look better --- not sure whether this is a good idea 2016-01-17 10:41:40 +01:00
Claude
67cbc5ebd1 made code slightly more pytho2 friendly 2016-01-17 10:41:40 +01:00
Claude
90c4ca8c04 should obviously keep typing.py parsable in python 2 2016-01-17 10:41:40 +01:00
Claude
e688a498ab Add sets and iterable/iterator 2016-01-17 10:41:40 +01:00
Claude
85023a22aa Not implemented classes should not default to everything 2016-01-17 10:41:40 +01:00
Claude
cc6bd7d161 rework so that it also works withouty pep0484 type hints in jedi_typing.py 2016-01-17 10:41:40 +01:00
Claude
52cc721f45 made typing classes inheritable; added MutableSequence and List 2016-01-17 10:41:40 +01:00
Claude
f5a31ad78e first try at the typing library 2016-01-17 10:41:40 +01: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
e193017163 Merge pull request #669 from reingart/master
Update API doc for completions
2015-12-30 12:34:44 +01:00
Mariano Reingart
2ec196fa2e Update API doc for completions
At least in jedi version 0.9.0 the API seems to change to:
 * complete method is now completions
 * words attribute is now name

Example:
```
(venv)reingart@S55t-B:~$ python
Python 2.7.6 (default, Jun 22 2015, 17:58:13) [GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import jedi
>>> jedi.__version__
'0.9.0'
>>> source = '''import json; json.l'''
>>> script = jedi.Script(source, 1, 19, '')
>>> script
<Script: ''>
>>> completions = script.completions()
>>> completions
[<Completion: load>, <Completion: loads>]
>>> completions[1].complete
'oads'
>>> completions[1].name
u'loads'
>>> 
```
2015-12-30 06:03:51 -03: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