Commit Graph
100 Commits
Author SHA1 Message Date
Dave Halter 64fcbbba79 First implementation of doing precise if statement filtering. 2015-06-22 22:16:38 +02:00
Dave Halter 6da4f1fffb Static analsyis test for complex flow tests (filtering). 2015-06-22 22:15:02 +02:00
Dave Halter a67408ad03 Move the unite function to common. 2015-06-18 14:16:16 +02:00
Dave Halter 0543586abd __getattr__ comment. 2015-05-06 19:56:00 +02:00
Dave Halter 2221f12de9 Make refactoring clause clearer. 2015-05-01 10:49:26 +02:00
Dave Halter df8a0d89ce Forgot to mention the import logic changes in the Changelog for 0.9.0. 2015-04-28 19:05:36 +02:00
Dave Halter 66557903ae \\\r\n is as possible as \\\n. 2015-04-28 18:53:14 +02:00
Dave Halter 712ae01ac0 Classes should always evaluate to true when asked for py__bool__() 2015-04-28 18:32:19 +02:00
Dave Halter 607f43290f The backwards tokenizer sometimes parsed not only string literals but also normal names. 2015-04-28 18:10:08 +02:00
Dave Halter c2a287c25a Usages on syntax should not return anything. 2015-04-28 17:35:26 +02:00
Dave Halter 126f490f1e Modules have now the name __main__ if they contain dots. 2015-04-28 17:29:42 +02:00
Dave Halter bb02f99de3 Dynamically created trailers need a parent, otherwise it can lead to crashes. 2015-04-28 16:40:58 +02:00
Dave Halter b59fc04432 Remove crate.io badges. Thy are not working anymore, see crateio/crate.io#18 2015-04-28 12:38:53 +02:00
Dave Halter cbd3a8a59a Restructured loading of compiled __init__ files. 2015-04-28 02:30:32 +02:00
Dave Halter 836fcd6ea0 Small api.Script.goto cleanup. 2015-04-28 02:07:53 +02:00
Dave Halter b6f635b88b Python 2.7 io.StringIO always needs unicode input. 2015-04-28 02:05:38 +02:00
Dave Halter 657920baf5 Finally able to ditch the old namespace_packages implementation. 2015-04-28 02:03:17 +02:00
Dave Halter 0d406d27fd Different __init__ file searching. 2015-04-28 01:58:49 +02:00
Dave Halter b8bb258677 Get rid of get_importer and clean up imports in general. 2015-04-28 01:41:01 +02:00
Dave Halter ef4b424cda Replace pr with tree, #566. 2015-04-28 01:34:31 +02:00
Dave Halter 71547641ae The recursion detector doesn't need to separate params and normal statements anymore, because now they are two completely different things. 2015-04-28 01:26:48 +02:00
Dave Halter 265e6b2c35 Change parser and api to use tree instead of pr. 2015-04-27 23:38:48 +02:00
Dave Halter b6ebb2f8bf Fixed issues with last positions in the tokenizer, which was messed up a little bit a few commits ago. 2015-04-27 21:42:40 +02:00
Dave Halter 0a96083fde Fix ur'' literals. 2015-04-27 19:21:41 +02:00
Dave Halter 902482568e The tokenize endmarker should really be the maximum position possible. Caused matplotlib to fail. Fixes davidhalter/jedi-vim#377. 2015-04-27 19:01:45 +02:00
Dave Halter 47d468a9bc forgot to include test_evaluate/not_in_sys_path files. 2015-04-27 17:16:43 +02:00
Dave Halter 84b774d9e1 Small refactorings. 2015-04-27 17:07:38 +02:00
Dave Halter d7417391a7 Skip star import cache tests. 2015-04-27 14:15:39 +02:00
Dave Halter 0203461980 Disable the star import cache. 2015-04-26 00:02:47 +02:00
Dave Halter 06d134a7c1 Finished changing the import logic. The sys.path calculations within Jedi are clearer now. 2015-04-25 22:45:08 +02:00
Dave Halter d038fba9df er.wrap -> Evaluator.wrap 2015-04-23 13:51:42 +02:00
Dave Halter ed74dde45c forgot to check in invisible_pkg 2015-04-23 13:40:05 +02:00
Dave Halter d16da33b9b Small test fix. 2015-04-23 04:11:28 +02:00
Dave Halter fbb960423e Remove legacy importer code. 2015-04-23 03:42:29 +02:00
Dave Halter a7c4b5800b Namespace packages work again. This time the same way as Python does it. 2015-04-23 03:36:46 +02:00
Dave Halter 039579b391 Improved static analysis for imports. 2015-04-23 02:43:49 +02:00
Dave Halter f4f30841ec change the return of _Importer.follow_file_system 2015-04-23 02:39:44 +02:00
Dave Halter d04241b482 Goto should not include imports that cannot be followed. 2015-04-23 02:37:22 +02:00
Dave Halter 691e5a8969 Fix flask tests. 2015-04-22 03:58:44 +02:00
Dave Halter 29bd59a355 Following os.path should be possible again. 2015-04-22 03:35:18 +02:00
Dave Halter dd3edd15f9 Remove legacy code from imports. 2015-04-22 03:22:54 +02:00
Dave Halter 7af5c23874 Cache bug fixes. 2015-04-22 03:01:32 +02:00
Dave Halter 05554a1c89 Fix some issues with import path errors. 2015-04-21 18:45:12 +02:00
Dave Halter 13267adfc2 Move the level calculation into the Importer. 2015-04-21 17:57:06 +02:00
Dave Halter 9b9049e574 Some small import changes that fix a few of the broken test cases. 2015-04-21 17:31:43 +02:00
Dave Halter 18c4b5f7dc Add py__package__ to the ModuleWrapper, which makes relative imports easy to implement and fixed a lot of other things. 2015-04-21 16:12:24 +02:00
Dave Halter 5c65e9cdaa py__name__ now returns the value found in the modules cache. 2015-04-20 16:40:10 +02:00
Dave Halter 77a37be83a Add a py__path__ method to the ModuleWrapper, that behaves very similar to a package's __path__ attribute. 2015-04-20 16:21:00 +02:00
Dave Halter df9452f210 Trying to change the import logic completely. We now have a sys.modules like cache. 2015-04-20 14:47:33 +02:00
Dave Halter 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. 2015-04-14 17:36:20 +02:00
Dave Halter 2f64a83e3c Rename test_api_classes -> test_classes. 2015-04-13 15:17:44 +02:00
Dave Halter fbe26ab64a Importlib might raise a ValueError. Fix #491. 2015-04-13 15:12:46 +02:00
Dave Halter bc765979ca Import priorities are wrong (__dict__ > files). Test for #536. 2015-04-13 15:04:49 +02:00
Dave Halter e2455eb670 Call signatures should work better for builtin classes (ducktyping). Fixes #515. 2015-04-10 13:45:23 +02:00
Dave Halter 74779f1a5d Test and preparations for better call signatures with builtins, see #515. 2015-04-10 03:05:38 +02:00
Dave Halter 1e623509cd Fix README glitches. 2015-04-10 02:40:16 +02:00
Dave Halter 47bf1c5daf Issue with numbers after names in call signatures. It would cause Jedi to stop analysing call signatures. Fixes #510 2015-04-10 02:17:12 +02:00
Dave Halter 7a22d374ca Merge branch 'dev' of github.com:davidhalter/jedi into dev 2015-04-09 16:17:30 +02:00
Dave Halter 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. 2015-04-09 16:17:16 +02:00
Dave Halter fab6567485 Merge pull request #567 from mfussenegger/buildout
run buildout detection only once per buildout script
2015-04-09 13:07:58 +02:00
Dave Halter 1195ed64ea Fix a small issue in the import logic that caused tests to fail. 2015-04-09 01:43:50 +02:00
Dave Halter 79caa2186e list(open().read()) should work now, fixes #412. 2015-04-09 00:46:31 +02:00
Dave Halter 408d182c41 Changelog for 0.9.0. 2015-04-08 13:20:15 +02:00
Dave Halter f122c9b5b3 Document the new features better in the next release. 2015-04-08 13:15:21 +02:00
Dave Halter b106dc25bd Update the README to tell more about Python features. 2015-04-08 12:16:13 +02:00
Dave Halter 98cf9f0c1a Jedi description update. 2015-04-08 11:47:58 +02:00
Dave Halter 7773859305 Write the tests for init extension modules (#472). 2015-04-08 02:54:35 +02:00
Dave Halter 474d390220 Use imp.get_suffixes to deal with __init__ files that are not .py files but .so etc. fixes #472 2015-04-08 02:41:59 +02:00
Dave Halter 9149c5adc2 Python 3.2 tests didn't work because a u string literal was used. 2015-03-31 14:42:26 +02:00
Dave Halter ef855a5316 Param descriptions should not end with a comma. 2015-03-31 14:38:03 +02:00
Dave Halter 72fd190149 unicode strings should not raise an error if used in repr.
Python 2 doesn't allow unicode objects in __repr__ methods. Therefore we need to encode them as utf-8 bytes.
2015-03-25 23:42:52 +01:00
Dave Halter 4bb41b6096 A property can raise an Exception, therefore the interpreter completion should check for those exceptions, fixes #538. 2015-03-24 15:26:00 +01:00
Dave Halter 54d8cd0a9b Small bug in parameter creation. 2015-03-24 15:06:11 +01:00
Dave Halter 0de5a0f412 Python 2 allows tuple unpacking in parameter definitions. Jedi just ignores such constructs, since they are really rare and not the future. 2015-03-24 15:02:07 +01:00
Dave Halter 61683cb83e Remove some unnecessary comment parts in the Python 2.7 grammar. 2015-03-08 22:40:22 +01:00
Dave Halter e296b00201 Change the tests of @hamatov a small bit. They are now working with the new parser. 2015-03-06 13:10:59 +01:00
Dave Halter 2cddfd656b Merge branch 'unicode_tokenize_fix2' of https://github.com/hatamov/jedi into dev 2015-03-06 11:44:03 +01:00
Dave Halter 8b1c033fc4 Remove old commented code. 2015-03-06 11:22:38 +01:00
Dave Halter eb146adcc1 Modules that are not importable shouldn't cause Jedi to stop working (just issue a warning). Fixes #468, #71. 2015-03-06 11:13:04 +01:00
Dave Halter 910f2e6486 Use textwrap.dedent for better readability of the testing code. 2015-03-06 01:49:57 +01:00
Dave Halter fd1be02f1e Test for unicode tokens in Python 2.7. 2015-03-06 01:47:37 +01:00
Dave Halter a6c5d9f0a6 Merge branch 'add-egg-links-to-syspath-on-parser' of https://github.com/blueyed/jedi into dev 2015-03-06 01:06:17 +01:00
Dave Halter 0b531d2b17 print in Python 2 shouldn't be a function, it's a keyword (without the future import). 2015-03-06 01:01:20 +01:00
Dave Halter b036c88b73 True in Python 2 is still not a keyword, but a name. 2015-03-06 00:42:57 +01:00
Dave Halter a0f8b58e71 Fix a Python 2.7 compatibility issue. 2015-03-06 00:37:41 +01:00
Dave Halter 468ff59c1c Remove hasattr/next from _compatibility (not used anymore), thanks @dongweiming for noticing. 2015-03-06 00:25:42 +01:00
Dave Halter 10df0f933f Remove the strange check in the parser to always create expr_stmt and file_input. 2015-03-05 15:30:07 +01:00
Dave Halter 8f58258f4d Writing a different Name.get_definition() implementation, returns the node, if there's no expr_stmt parent. 2015-03-05 15:17:08 +01:00
Dave Halter 0ceadf69a3 Fake objects don't need an ExprStmt for the docstring anymore. 2015-03-05 14:24:19 +01:00
Dave Halter 76588aa040 Static analysis issues resolved (that were cause by the removal of using ExprStmt for every node). 2015-03-05 14:18:10 +01:00
Dave Halter e698e6aeeb Rework some of the analysis statement gathering. 2015-03-05 13:36:41 +01:00
Dave Halter b489019f5b Most integration tests (except 2) pass if we don't always make the use of an ExprStmt. 2015-03-05 01:55:25 +01:00
Dave Halter 5d54922c4b Docstring change, to make non ExprStmt statements possible. 2015-03-05 01:37:47 +01:00
Dave Halter ec7a609e44 Remove some unnecessary code in dynamic.py 2015-03-05 01:13:43 +01:00
Dave Halter f273e314b6 Preparing for an eventual replacement of using expr_stmt for all nodes. 2015-03-05 00:07:50 +01:00
Dave Halter aea38ca9aa Remove the classify function in the parser. This could make Jedi a tiny bit faster. 2015-03-04 17:15:33 +01:00
Dave Halter 9c2e73d460 Add syntax errors to the parser. 2015-03-04 17:12:51 +01:00
Dave Halter a3c2108ecf Fix and test CallSignature.bracket_start. 2015-03-04 12:15:43 +01:00
Dave Halter 1ce96f2581 More fixes for ExprStmt docstrings. 2015-03-03 18:08:24 +01:00
Dave Halter 40e61fc96d Fix ExprStmt docstring bugs. 2015-03-03 17:42:49 +01:00