71547641ae
The recursion detector doesn't need to separate params and normal statements anymore, because now they are two completely different things.
Dave Halter2015-04-28 01:26:48 +02:00
265e6b2c35
Change parser and api to use tree instead of pr.
Dave Halter2015-04-27 23:38:48 +02:00
b6ebb2f8bf
Fixed issues with last positions in the tokenizer, which was messed up a little bit a few commits ago.
Dave Halter2015-04-27 21:42:40 +02:00
05554a1c89
Fix some issues with import path errors.
Dave Halter2015-04-21 18:45:12 +02:00
13267adfc2
Move the level calculation into the Importer.
Dave Halter2015-04-21 17:57:06 +02:00
9b9049e574
Some small import changes that fix a few of the broken test cases.
Dave Halter2015-04-21 17:31:43 +02:00
18c4b5f7dc
Add py__package__ to the ModuleWrapper, which makes relative imports easy to implement and fixed a lot of other things.
Dave Halter2015-04-21 16:12:24 +02:00
5c65e9cdaa
py__name__ now returns the value found in the modules cache.
Dave Halter2015-04-20 16:40:10 +02:00
77a37be83a
Add a py__path__ method to the ModuleWrapper, that behaves very similar to a package's __path__ attribute.
Dave Halter2015-04-20 16:21:00 +02:00
df9452f210
Trying to change the import logic completely. We now have a sys.modules like cache.
Dave Halter2015-04-20 14:47:33 +02:00
8fca3f78a1
Add a py__name__ call to modules. This makes listing the qualified names of modules possible (in combination with the module_name_cache). Fixes#519.
Dave Halter2015-04-14 17:36:20 +02:00
2f64a83e3c
Rename test_api_classes -> test_classes.
Dave Halter2015-04-13 15:17:44 +02:00
47bf1c5daf
Issue with numbers after names in call signatures. It would cause Jedi to stop analysing call signatures. Fixes#510Dave Halter2015-04-10 02:17:12 +02:00
7a22d374ca
Merge branch 'dev' of github.com:davidhalter/jedi into dev
Dave Halter2015-04-09 16:17:30 +02:00
a9d3df9b5e
Replace the threading.Thread tests in docstrings with random.Random tests, because that might work smother in the travis tests. Don't know why it broke there.
Dave Halter2015-04-09 16:17:16 +02:00
474d390220
Use imp.get_suffixes to deal with __init__ files that are not .py files but .so etc. fixes#472Dave Halter2015-04-08 02:41:59 +02:00
9149c5adc2
Python 3.2 tests didn't work because a u string literal was used.
Dave Halter2015-03-31 14:42:26 +02:00
ef855a5316
Param descriptions should not end with a comma.
Dave Halter2015-03-31 14:38:03 +02:00
72fd190149
unicode strings should not raise an error if used in repr.
Dave Halter2015-03-25 23:39:53 +01:00
4bb41b6096
A property can raise an Exception, therefore the interpreter completion should check for those exceptions, fixes#538.
Dave Halter2015-03-24 15:26:00 +01:00
0de5a0f412
Python 2 allows tuple unpacking in parameter definitions. Jedi just ignores such constructs, since they are really rare and not the future.
Dave Halter2015-03-24 15:02:07 +01:00
61683cb83e
Remove some unnecessary comment parts in the Python 2.7 grammar.
Dave Halter2015-03-08 22:40:22 +01:00
e296b00201
Change the tests of @hamatov a small bit. They are now working with the new parser.
Dave Halter2015-03-06 13:10:59 +01:00
eb146adcc1
Modules that are not importable shouldn't cause Jedi to stop working (just issue a warning). Fixes#468, #71.
Dave Halter2015-03-06 11:13:04 +01:00
32081bd156
Merge branch 'dev' into unicode_tokenize_fix2
farhad2015-03-06 12:14:38 +04:00
f9c104348e
added myself to AUTHORS.txt
farhad2015-03-06 11:55:16 +04:00
80719fc821
added test for quoted strings parsing
farhad2015-03-06 11:54:01 +04:00
0b531d2b17
print in Python 2 shouldn't be a function, it's a keyword (without the future import).
Dave Halter2015-03-06 01:01:20 +01:00
b036c88b73
True in Python 2 is still not a keyword, but a name.
Dave Halter2015-03-06 00:42:57 +01:00
a0f8b58e71
Fix a Python 2.7 compatibility issue.
Dave Halter2015-03-06 00:37:41 +01:00
468ff59c1c
Remove hasattr/next from _compatibility (not used anymore), thanks @dongweiming for noticing.
Dave Halter2015-03-06 00:25:01 +01:00
10df0f933f
Remove the strange check in the parser to always create expr_stmt and file_input.
Dave Halter2015-03-05 15:30:07 +01:00
8f58258f4d
Writing a different Name.get_definition() implementation, returns the node, if there's no expr_stmt parent.
Dave Halter2015-03-05 15:17:08 +01:00
0ceadf69a3
Fake objects don't need an ExprStmt for the docstring anymore.
Dave Halter2015-03-05 14:24:19 +01:00
76588aa040
Static analysis issues resolved (that were cause by the removal of using ExprStmt for every node).
Dave Halter2015-03-05 14:18:10 +01:00
e698e6aeeb
Rework some of the analysis statement gathering.
Dave Halter2015-03-05 13:36:41 +01:00
b489019f5b
Most integration tests (except 2) pass if we don't always make the use of an ExprStmt.
Dave Halter2015-03-05 01:55:25 +01:00
5d54922c4b
Docstring change, to make non ExprStmt statements possible.
Dave Halter2015-03-05 01:37:47 +01:00
ec7a609e44
Remove some unnecessary code in dynamic.py
Dave Halter2015-03-05 01:13:43 +01:00
f273e314b6
Preparing for an eventual replacement of using expr_stmt for all nodes.
Dave Halter2015-03-05 00:07:50 +01:00
aea38ca9aa
Remove the classify function in the parser. This could make Jedi a tiny bit faster.
Dave Halter2015-03-04 17:15:33 +01:00