1
0
forked from VimPlug/jedi
Commit Graph

285 Commits

Author SHA1 Message Date
Dave Halter
47c249957d Make BuiltinMethod a Context object. 2017-09-28 12:04:44 +02:00
Dave Halter
5415a6164f Starting to try to move some functions away from Evaluator.
This time eval_trailer.
2017-09-27 16:21:02 +02:00
Dave Halter
b74c8cb033 To be able to customize ContextSet, move a subclass to evaluate.context 2017-09-27 09:20:58 +02:00
Dave Halter
ee52cc7501 Fix most dynamic array issues. 2017-09-26 17:26:33 +02:00
Dave Halter
5328d1e700 Add a ContextSet.
This is not bug free yet, but it's going to be a good abstraction for a lot of small things.
2017-09-25 11:04:09 +02:00
Dave Halter
0c01a3b823 The sys.modules implementation did not work properly with newly created files.
Fixes #886.
2017-09-20 10:06:02 +02:00
Dave Halter
c51634b8d4 dict_values should be accessible for CompiledObjects. 2017-09-17 02:48:09 +02:00
Dave Halter
4b4b2c2122 Fix a small issue surrounding old school classes in Python 2. 2017-09-17 02:09:39 +02:00
Dave Halter
9dd2027299 Way better support for instantiated classes in REPL
Fixes several issues:

- It was not possible to correctly trace where instances were coming from in a
  REPL. This led to them being pretty much ignored.
- Instances were then just treated as classes and not as actual instances in
  MixedObjects. (However since they were ignored in the first place this
  wasn't really an issue).
- Avoiding the repr bug https://github.com/python/cpython/pull/2132/files in
  Jedi is working a bit differently. We're just never accessing Objects
  directly. This should work around 99.99% of the cases were people are using
  this stuff.

Fixes #872
2017-09-15 01:55:18 +02:00
Dave Halter
4c2d1ea7e7 Understand context managers correctly
Fixes #812.
2017-09-13 11:00:34 +02:00
Dave Halter
5a8b9541a7 Add operator.itemgetter support for Python <= 3.3.
Also fixes namedtuple support for these versions.
2017-09-12 23:18:32 +02:00
Dave Halter
c25a4a00df readlines should be completable.
Fixes #921.
2017-09-10 01:54:50 +02:00
Dave Halter
80284fb14b Gracefully fail in 2.7 because inspect.signature is not available. 2017-09-10 01:36:32 +02:00
Dave Halter
5c6f8bda01 Fix inspect.signature for Python3.4. 2017-09-10 01:34:15 +02:00
Dave Halter
d1c85191a0 Start using inspect.signature for CompiledObject params.
Fixes 917 and 924.
2017-09-09 22:29:00 +02:00
Dave Halter
3bceef075a Merge branch 'numpydoc' of https://github.com/bcolsen/jedi 2017-09-09 18:50:19 +02:00
Dave Halter
c4601b835f Don't go crazy with big lists. 2017-09-07 01:26:53 +02:00
Dave Halter
d2b4e0511f Ignore stdlib paths for dynamic param inference. 2017-09-07 00:09:14 +02:00
Dave Halter
e85000b798 Replace memoize_default with two nicer functions. 2017-09-05 18:46:16 +02:00
Dave Halter
882f8029ea Use split_lines and python_bytes_to_unicode directly. 2017-09-03 18:38:00 +02:00
Dave Halter
a37201bc1d Finally fixing the Python 2 issues with static_getattr. 2017-08-13 22:24:50 +02:00
Dave Halter
88cfb2cb91 Remove side effects when accessing jedi from the interpreter.
Note that there is http://bugs.python.org/issue31184.
Fixes #925.
2017-08-12 22:49:05 +02:00
bcolsen
d19a97f53a Numpydocs and compiled objects return types 2017-08-08 22:46:33 -06:00
Dave Halter
cd8932fbfc Add a latest grammar to the evaluator and use it to avoid importing from parso import parse. 2017-05-24 00:37:36 -04:00
Dave Halter
b90589b62e Some changes because parso has changed. 2017-05-22 15:42:42 -04:00
Dave Halter
f35f1b9676 Add the cache_path parameter to parso calls. 2017-05-20 10:08:48 -04:00
Dave Halter
9bca3d39f5 Actually use parso now instead of Jedi. 2017-05-19 14:20:14 -04:00
Dave Halter
30a02587a7 Merge branch 'dev' of github.com:davidhalter/jedi into dev 2017-05-07 14:46:47 +02:00
Élie Gouzien
a78769954d Check whether inspect.getfile will raise a TypeError and anticipate it.
Anticipate the raise of TypeError from inspect.getfile to prevent the computation of repr() for the error message wich is not used.
Useful for some big pandas arrays.
Fix tentative of #919.
2017-05-06 19:40:36 +02:00
Dave Halter
14eeb60240 Remove is_scope from CompiledObject. It's not needed according to tests. 2017-05-05 09:23:50 +02:00
Dave Halter
b4039872bd Replace Scope.subscopes with iter_funcdefs and iter_classdefs. 2017-04-30 01:36:17 +02:00
Dave Halter
3e05061f3b Remove old unused code. 2017-04-28 18:34:02 +02:00
Matthias Bussonnier
b0f10081d4 Fix : Jedi do not complete numpy arrays in dictionary
Fix ipython/ipython#10468
2017-04-21 13:14:07 +02:00
Dave Halter
ac8ed62a77 Remove FakeName since it's not actually used anymore. 2017-04-20 09:52:31 +02:00
Dave Halter
7ca62578e1 Add py__doc__ as a better approach to docstrings. 2017-04-20 09:45:15 +02:00
Dave Halter
a0b65b52c6 used_names -> get_used_names(). 2017-04-12 08:56:11 +02:00
Dave Halter
eb37f82411 Add memoization where it needs to be. Fixes #894. 2017-04-05 01:06:48 +02:00
Dave Halter
fe5eaaf56c Add a better debugging message for import fails. 2017-04-04 23:27:45 +02:00
Dave Halter
47c1b8fa07 Fix bug #844. 2017-04-02 22:21:57 +02:00
Dave Halter
4cc467123c Use PythonNode and not Node in the evaluator. 2017-04-01 17:39:52 +02:00
Dave Halter
8a35a04439 Remove the module path from the parser tree.
Some static analysis tests are still failing.
2017-03-27 18:13:32 +02:00
Dave Halter
63cafeaa87 Remove all usages of start_parsing=True in the fast parser. 2017-03-26 12:49:40 +02:00
Dave Halter
2cb565561d Replace the diff parser imports with the modified path. 2017-03-21 22:10:01 +01:00
Dave Halter
0f66a3c7a8 Remove the module attribute from the parser. 2017-03-18 03:53:34 +01:00
Dave Halter
448bfd0992 Move the python parser tree. 2017-03-16 17:20:32 +01:00
Dave Halter
55c9fd3227 Fix an issue in the fake parser 2017-03-15 08:44:49 +01:00
Dave Halter
9efb3f0af2 More direct parser usage removals. 2017-03-14 19:31:54 +01:00
Dave Halter
97fc3bc23c Refactored the parser calls. Now it's possible to use jedi.parser.python.parse to quickly parse something. 2017-03-14 00:38:58 +01:00
Matthias Bussonnier
fc27ca1b6a 'fix a couple of error locations' 2017-02-24 13:03:03 +01:00
Dave Halter
425fba5e95 Move the parser.fast module to parser.diff. 2017-01-10 19:15:47 +01:00