1
0
forked from VimPlug/jedi
Commit Graph

85 Commits

Author SHA1 Message Date
Dave Halter
0b99473886 ExecutedParams should never be additionally faked, even if they are the first params. They have been legitimately created by a caller. 2014-06-30 15:22:53 +02:00
Dave Halter
1c9058ce6b Also issue warnings if setattr is used in a class instead of an error 2014-06-26 13:40:15 +02:00
Dave Halter
a936cea987 jedi issues now warnings instead of errors for AttributeErrors that happen in instances with __getattr__/__getattribute__ methods 2014-06-26 12:21:19 +02:00
Dave Halter
7e0edc4776 preparation for warnings in static analysis 2014-06-26 11:57:44 +02:00
Dave Halter
44238a9f92 submodules are automatically indexed without actually importing them. fixes #413.
However, this is not a 100% correct Python behavior. Python behavior would be to follow ALL imports in all modules (recursively) and check if the module was imported. However, that's a lot of work, that would slow down autocompletion. For now it's better to have no false positives in flaking and to ignore a few attribute errors.
2014-06-25 01:39:43 +02:00
Dave Halter
034a818863 repr improvements 2014-06-24 13:42:40 +02:00
Dave Halter
e106e4ffc8 fixed for loop in exception issue combined with usage of an exception variable 2014-06-22 23:32:07 +02:00
Dave Halter
401914e91c exception elements are always instances 2014-06-22 16:25:42 +02:00
Dave Halter
3e0f719915 changed the way how the dynamic param function searches it's parent scope, to enable smooth list comprehension following 2014-06-22 13:48:30 +02:00
Dave Halter
ddca14980e introduce an is_scope function to make it easier to work with scopes 2014-06-20 17:47:42 +02:00
Dave Halter
3ee3a04bcb fix list comprehension issues in nested parentheses. 2014-06-20 17:29:30 +02:00
Dave Halter
d5758adb2b fix list comprehensions. they were not implemented in a good way 2014-06-12 11:10:10 +02:00
Dave Halter
63868feb5d hasattr checks working now, #408 2014-06-10 16:08:53 +02:00
Dave Halter
af801ef9b4 make generator comprehensions work 2014-06-10 00:36:36 +02:00
Dave Halter
cd5b8aebfd fix issues with equal names before and after listcomprehension 2014-06-09 20:28:24 +02:00
Dave Halter
0b926ca454 get rid of is_list_comp boolean in favor of a direct check of ListComprehensionFlow 2014-06-09 20:19:31 +02:00
Dave Halter
acb4959a6a temporary very unfinished solution for the *args/**kwargs combination problem, if they are used in common with dynamic params. This doesn't solve the issue entirely, but it's at least a start and will probably solve all autocompletion issues. However, static analysis needs a little bit more than that. 2014-06-04 17:18:09 +02:00
Dave Halter
248cca2e5e fix issues with empty *args as inputs 2014-05-31 11:03:37 +02:00
Dave Halter
f57b53bbe2 check for 'if foo is not None' checks in the NameFinder. Solves the issues with the subprocess library. 2014-05-20 16:23:46 +02:00
Dave Halter
79556a7935 finder docstring and naming improvements 2014-05-20 15:17:07 +02:00
Dave Halter
ad762f674e renaming of an unclear variable 2014-05-20 14:01:43 +02:00
Dave Halter
08b48807e9 a (temporary) solution for the __file__ access issues in imported modules, see #408 2014-05-19 01:01:56 +02:00
Dave Halter
ecf9043d97 Improved error messages for AttributeErrors, however not a final version #408 2014-05-16 18:02:33 +02:00
Dave Halter
9bcc4f8fd2 static analysis is now able to tell the difference between NameError/AttributeError 2014-05-13 16:14:32 +02:00
Dave Halter
a2b483b4f5 None issue fix for static analysis 2014-05-13 01:21:32 +02:00
Dave Halter
b6ec589997 refactor general array lookup method get_index_types 2014-05-12 15:23:48 +02:00
Dave Halter
586ac9d013 removed a few debug things. 2014-05-10 20:31:33 +02:00
Dave Halter
11a445ab42 Merge branch 'dev' into linter 2014-05-10 16:53:41 +02:00
Dave Halter
60971245d6 star imports now have their own class, which will be important for AttributeError detection 2014-05-10 16:53:27 +02:00
Dave Halter
358472b21f improved star import support preparation 2014-05-10 14:12:36 +02:00
Dave Halter
7c965e544f dive further into following imports, etc 2014-05-08 11:26:08 +02:00
Dave Halter
5ed887c170 precautionary fix without test (sith.py didn't reproduce it), in execution detection. 2014-04-30 12:21:18 +02:00
Dave Halter
23b4a89d1d slices should be ignored in __getitem__ settings (for now) 2014-04-28 18:15:25 +02:00
Dave Halter
d106b2ce2b __getattr__ arbitrary returns fix 2014-04-27 23:15:32 +02:00
Dave Halter
77d505e251 eval_statement input shouldn't be a NamePart, but a string 2014-04-22 11:33:46 +02:00
Dave Halter
27f01ca1f6 use Param.stars to avoid certain syntax error params to cause an exception 2014-04-20 13:38:10 +02:00
Dave Halter
240b0c9581 NamePart doesn't have an __eq__ method anymore 2014-04-18 14:36:10 +02:00
Dave Halter
b81eb9f8b3 NameFinder.filter_name is simpler now. 2014-04-14 13:45:31 +02:00
Dave Halter
6a40c9b671 remove get_set_vars completely from existance 2014-04-14 12:40:59 +02:00
Dave Halter
4c53a64ca0 increase speed again for compiled objects by not using sorted + lambda on its list of defined names 2014-04-14 10:12:46 +02:00
Dave Halter
4bc55be103 significant speedup due to compiled caching 2014-04-13 16:31:38 +02:00
Dave Halter
6de46fe373 realizing that #241 is more of a feature than a bug, I disabled the corresponding test. This will be changed once the whole implementation of isinstance becomes more flexible and also allows checks on subclasses, so that no information is lost. 2014-04-09 16:27:42 +02:00
Dave Halter
b680246195 docstring working for local definitions as well 2014-03-27 12:34:53 +01:00
Dave Halter
394e2e77de refactored the development docs, which was badly needed especially since evaluate/dynamic.py doesn't contain a lot of functionality anymore. 2014-03-11 17:26:38 +01:00
Dave Halter
db1b73d423 lo and behold - reversed is implemented - the force is strong with this one. fixes #24 2014-03-11 11:04:00 +01:00
Dave Halter
52348e0d1b delete unnecessary checks from filter 2014-03-10 16:12:17 +01:00
Dave Halter
62a14f7558 restructure NameFinder.filter_name a little bit 2014-03-10 15:57:01 +01:00
Dave Halter
cc667e76dc start_pos is usually not needed to search in modules, but if we generalize that, things get a lot slower - tests still pass - but the slowness is probably due to some weird recursion catching that now happens and that Jedi runs into, e.g. check ./run.py std 27 --debug 2014-03-10 00:40:57 +01:00
Dave Halter
5f8f1e170b moved global variables handling 2014-03-05 01:19:18 +01:00
Dave Halter
2322edff8f keyword statement not includes globals 2014-03-05 00:44:19 +01:00