Dave Halter
33e5a3280a
Remove IsScope in favor of an is_scope function.
...
This function was partially implemented anway. Now we've also added a function called 'get_parent_scope', to make it easy to get a scope of a Call, Statement, whatever.
2014-08-12 01:19:19 +02:00
Dave Halter
1865284fa9
fix the interpreter (previously broken by flow analysis)
2014-08-12 00:19:20 +02:00
Dave Halter
242072976a
use py__mro__ in a classes scope_names_generator
2014-08-11 23:53:45 +02:00
Dave Halter
526af7ccbe
settings should not be affected by exceptions.
2014-08-11 17:27:40 +02:00
Dave Halter
f1711f8f9c
possible direction of branch checks for name resolution.
2014-08-10 13:17:37 +02:00
Dave Halter
483f5c14ee
Listeneres should be removed even in exception cases. Do a 'finally' cleanup.
2014-08-07 16:27:57 +02:00
Dave Halter
01bdd1e4fa
Test fixes and for loops need to be handled a awell in flow_analysis.
2014-08-07 15:51:41 +02:00
Dave Halter
0ae9e520c1
flow analysis working for elif statements (even in combination with else)
2014-08-07 15:18:30 +02:00
Dave Halter
743d064e6d
exception while using else as a scope
2014-08-07 12:10:31 +02:00
Dave Halter
ee65764c3a
more complicated logic working with else
2014-08-07 12:02:08 +02:00
Dave Halter
d94a70b524
fix a logic issue in the flow_analysis.Status.__and__
2014-08-07 03:02:40 +02:00
Dave Halter
b7151c1ef9
add a first flow analysis test
2014-08-06 23:35:30 +02:00
Dave Halter
138fa1b4de
deletion of returns from SCOPE_CONTENTS was wrong.
2014-08-06 22:42:38 +02:00
Dave Halter
e7e7bd29e8
fix generator tests (multiple yields must be called with an if random.
2014-08-06 12:45:38 +02:00
Dave Halter
23c39eff9a
fix lambda issues
2014-08-06 12:40:08 +02:00
Dave Halter
e3bb0ccc2e
fix a keyword statement issue
2014-08-06 12:10:36 +02:00
Dave Halter
15ec0a77fe
a first very simple implementation of reachable/unreachable return statements.
2014-08-05 17:02:16 +02:00
Dave Halter
f5e49e3218
flow analysis preparation
2014-08-05 12:06:58 +02:00
Dave Halter
c44168f7ad
add a Flow.previous attribute to be able to access the if flow from an else clause.
2014-08-05 11:17:18 +02:00
Dave Halter
54dce0e3b2
fix strange issues of Python's std lib tokenizer, might be in there as well (not sure, cause I modified a lot). fixes #449
2014-08-04 16:47:36 +02:00
Dave Halter
b2b4827ce3
moved test_token to test_tokenize
2014-08-04 16:25:33 +02:00
Dave Halter
cba100a801
test for #414 which doesn't seem to be failing anymore.
2014-08-04 16:08:47 +02:00
Dave Halter
625e88e851
isinstance checks now also give you type hints in class contexts, fixes #241 .
2014-08-04 02:11:30 +02:00
Dave Halter
0a0673e87c
refactoring in dynamic param searching
2014-08-04 01:39:05 +02:00
Dave Halter
7bba12e8c5
comments
2014-08-03 23:00:32 +02:00
Dave Halter
6e5d80a6b2
builtins shouldn't be unique if called by compiled.create
2014-08-01 15:51:59 +02:00
Dave Halter
68cecad996
tests for py__mro__
2014-08-01 15:50:18 +02:00
Dave Halter
2c0a46fafe
Fix an issue with CallSignatures:
...
If used in a longer statement, it could happen that parts of the statement was still evaluated, but the call signature is only valid at the cursor.
2014-07-31 17:47:56 +02:00
Dave Halter
7b4a188948
fix a few small issues that remained in the tests
2014-07-31 17:34:35 +02:00
Dave Halter
59b8c6b015
CompiledObjects should execute everything when reading the return information from docstring (because it's always types, not values)
2014-07-31 17:16:24 +02:00
Dave Halter
332a16a27e
elements in tuples/lists in docstrings were not executed.
2014-07-31 17:13:56 +02:00
Dave Halter
d09279e0ad
change tests that provided wrong instance information
2014-07-31 15:16:24 +02:00
Dave Halter
50fa3a732d
actually start checking if the integration tests are instances on both sides of the comparison. This wasnt necessary for just autocompletion, but it's way more important now.
2014-07-31 14:58:32 +02:00
Dave Halter
d899f69686
simplify a lot of the current InstanceElement behavior, because we know now, that there's either a Statement or a Function inside (or maybe some other parser objects like an Array.
2014-07-31 13:41:10 +02:00
Dave Halter
0fbd5efefd
wrap instance element creation so that it only contains functions and statements, not CompiledObject or Instance.
2014-07-31 13:16:11 +02:00
Dave Halter
870abe73d4
Calling an InstanceElement of an Instance of CompiledObject doesn't raise an error anymore. Yes, it's really that complicated.
2014-07-30 19:49:41 +02:00
Dave Halter
0851e7667e
A module shouldn't be callable.
2014-07-30 17:07:57 +02:00
Dave Halter
723d1e4631
Nicer usage of py_call within InstanceElement and Python 2.7 compatibility
2014-07-30 17:00:16 +02:00
Dave Halter
7cc35fe0b8
remove a very old function call in FunctionExecution that had no effect
2014-07-30 16:41:02 +02:00
Dave Halter
cf63d20988
get rid of the evaluate_generator param
2014-07-30 16:36:27 +02:00
Dave Halter
565cfce2fe
Executable -> Executed
2014-07-30 16:00:38 +02:00
Dave Halter
7bd76022bf
get rid of the whole is_callable stuff, because now we can just check for hasattr(obj, 'py__call__')
2014-07-30 15:50:47 +02:00
Dave Halter
e58dc0a3d9
simplify evaluator.execute, because now everything is using py__call__
2014-07-30 15:40:10 +02:00
Dave Halter
373ff2c45a
fix most issues related to the py__call__ stuff and generalize it.
2014-07-30 15:23:41 +02:00
Dave Halter
1e6a950aec
further progress in changing to py__call__
2014-07-30 14:40:56 +02:00
Dave Halter
ccd304bcb7
start switching to a more python similar approach of naming, start by naming execution stuff py__call__
2014-07-30 14:06:32 +02:00
Dave Halter
196afaacbf
always operate on class in super and not on an instance. that's the proper way.
2014-07-30 11:34:27 +02:00
Dave Halter
e81749bbe1
Merge branch 'dev' of github.com:davidhalter/jedi into dev
2014-07-30 11:27:46 +02:00
Dave Halter
3c92d175da
using super() in actual executed classes wasn't possible. fixes #421
2014-07-30 11:27:27 +02:00
Dave Halter
53671bca84
replace get_super_classes with py_bases
2014-07-30 10:54:39 +02:00
Dave Halter
a6855029d2
added a few EuroPython sprint guys to AUTHORS.txt
2014-07-30 09:15:17 +02:00
Dave Halter
ddd4e92e84
temporary SuperInstance class to eventually handle super. But need something like mro() resolution first.
2014-07-29 23:57:29 +02:00
Dave Halter
cfe54e83ff
incomplete functions shouldn't cause any trouble. fixes #429 .
2014-07-28 17:42:20 +02:00
Dave Halter
a86cfa2dd7
Merge pull request #453 from alga/dev
...
Europython2014 davidhalter/jedi#361attempt
2014-07-27 20:58:03 +04:30
Dave Halter
440b9b072e
Merge pull request #441 from davidhalter/dynamic_inheritance
...
Dynamic superclasses
2014-07-27 18:26:48 +04:30
Dave Halter
4e04770a75
Merge pull request #451 from davidhalter/issue436
...
Issue 436: Operator statement wrapper was missing
2014-07-27 18:22:43 +04:30
Dave Halter
6d99e639cd
Merge branch 'add-numpydoc-support' of git://github.com/immerrr/jedi into dev
2014-07-27 11:23:39 +02:00
Dave Halter
e2cdbf61de
Merge remote-tracking branch 'origin/travis_py34' into dev
2014-07-27 09:52:54 +02:00
Dave Halter
9028641ca7
Merge remote-tracking branch 'origin/namedtuple' into dev
2014-07-27 09:51:50 +02:00
Dave Halter
97a204a985
Merge branch 'dev' of github.com:davidhalter/jedi into dev
2014-07-27 09:44:25 +02:00
Dave Halter
606b6851ff
remove the scope_names_generator stuff again. We should enable it somewhere in time, but for now it just breaks tests.
2014-07-27 09:43:22 +02:00
Dave Halter
cd648e933b
Merge pull request #448 from ppalucki/master
...
Sphinx oneline param type declaration feature
2014-07-27 12:05:32 +04:30
Dave Halter
c85bdb8ff1
little edge case of modules that don't have a scope_names_generator, which is unfortunately missing, but not really used in Jedi.
...
At europython's hackathon we played with it and @scoder added a small script to cython/Cython/Compiler/JediTyper.py, which makes it possible to add Cython types to a Python script.
2014-07-26 13:18:04 +02:00
Dave Halter
4f1d39d3df
set changelog date for v0.8.1 correct
2014-07-25 00:45:39 +02:00
Dave Halter
293fa5a14f
Merge pull request #437 from blueyed/doc-changelog-minor
...
Minor fixes to the changelog
2014-07-25 03:14:06 +04:30
Dave Halter
a01e4c6b37
Merge remote-tracking branch 'origin/master' into dev
2014-07-23 00:47:30 +02:00
Dave Halter
5e9d9573d5
Don't warn on addition of an int literal plus an unknown int number.
2014-07-22 16:44:10 +02:00
Dave Halter
f7c8c43fbc
check not only - but also + for numbers.
2014-07-22 16:18:57 +02:00
Dave Halter
96ca596cc2
fix the operation test where static analysis reports additions of ints with non-ints.
2014-07-22 16:05:46 +02:00
Dave Halter
852cdad754
Operator fixes. Subclass of Simple, now.
2014-07-22 16:02:34 +02:00
Dave Halter
15f42d93d7
it should be possible to find the origin of an operation, if it's a faulty one (static analysis)
2014-07-22 14:52:58 +02:00
Dave Halter
50ceef6e09
1 + '1' TypeErrors are now detected, but not shown in the right place
2014-07-22 10:44:56 +02:00
Dave Halter
52bbedd4a8
renamed company-jedi to anaconda-mode, cc @proofit404
2014-07-22 10:33:49 +02:00
Dave Halter
037d5fa02a
static analysis tests for the 1 + '1' test
2014-07-22 01:40:36 +02:00
Dave Halter
d350c1fa30
Merge branch 'linter' of github.com:davidhalter/jedi into linter
2014-07-21 17:40:25 +02:00
Dave Halter
b0d5d96b20
Merge pull request #435 from hattya/windows
...
fixes for Windows
2014-07-21 16:38:53 +02:00
Dave Halter
ec690b9ec5
change the default linter command from 'force' to 'linter'
2014-07-21 16:15:42 +02:00
Dave Halter
2616143d10
unicode issues with docstrings should be gone, fixes #420
2014-07-18 17:43:25 +02:00
Dave Halter
e07f51387f
added a test for hex value issues in docstrings, see #427
2014-07-18 17:09:44 +02:00
Dave Halter
ee1c5041ed
use the new implementation of splitlines all over the code, fixes #424
2014-07-18 16:59:22 +02:00
Dave Halter
ffaacbefbc
new splitlines implementation to get rid of the ugly splitlines we now have as well as (partially) the issue with form feeds
2014-07-18 16:52:55 +02:00
Dave Halter
0f665bf436
test for #424 , issues with form feeds
2014-07-18 16:52:25 +02:00
Dave Halter
81f3b940e8
dicts should not be used to check against in get_defined_names, because they cannot contain a defined name (lists and tuples can) so just ignore them., fixes #417
2014-07-18 15:37:10 +02:00
Dave Halter
4626a8b6df
test for #417
2014-07-18 15:23:47 +02:00
Dave Halter
21341283ca
another parser issue, very much related to the last one. sometimes a None element was used as a token.fixes #418
2014-07-18 15:10:10 +02:00
Dave Halter
0dea47b260
def/class keywords after an opening parentheses led to empty arrays without closing brackets, tests & fixes #416
2014-07-18 12:53:06 +02:00
Dave Halter
3be5220bf1
parentheses checks in the fast parser (tokenizer) have been improved to really cover all cases. real fix for davidhalter/jedi-vim#288
2014-07-18 10:59:28 +02:00
Dave Halter
03226783dd
parentheses should be ignored when calculating the indent of a new block in the fast parser, fixes davidhalter/jedi-vim#288
2014-07-18 09:11:06 +02:00
Dave Halter
08f7a439c0
merged dev and linter
2014-07-17 23:17:49 +02:00
Dave Halter
a1bc644bfb
fix a small issue in the alternative test runner
2014-07-17 22:47:54 +02:00
Dave Halter
9eec2b2794
Merge pull request #434 from hattya/last-part
...
keep newline at end of code
2014-07-17 20:21:21 +04:30
Dave Halter
4852c7840f
Merge pull request #433 from hattya/pytest
...
update pytest to latest stable
2014-07-17 14:28:31 +04:30
Dave Halter
ef58f0e8e0
Merge pull request #430 from hattya/dev
...
improve fast parser for incremental parsing
2014-07-17 14:24:17 +04:30
Dave Halter
53a32d8304
test for parser issues with parentheses indentation, see davidhalter/jedi-vim#288
2014-07-15 17:05:16 +02:00
Dave Halter
22e5574a91
Remove some get_defined_names methods, that are not needed anymore.
2014-07-03 12:12:50 +02:00
Dave Halter
1fd7acef7a
finally able to remove _get_defined_names_for_position
2014-07-03 11:53:51 +02:00
Dave Halter
c1ed3bf38a
cleanup NameFinder.scopes, fully use scope_names_generator.
2014-07-03 11:48:26 +02:00
Dave Halter
ea370a083d
more consequent usage of scope_names_generator
2014-07-03 11:41:33 +02:00
Dave Halter
a7e4d81692
also add scope_names_generator to the iterable module classes, as well as cleaning up some old scope_names_generator stuff
2014-07-02 18:58:31 +02:00
Dave Halter
3264a1815e
Merge pull request #407 from hattya/dev
...
fix virtualenv support
2014-07-02 21:16:51 +04:30