Dave Halter
5755d5a4ee
Use unicode always for getting special objects
2017-12-28 22:41:20 +01:00
Dave Halter
6b6795c40c
Don't use python_version directly on evaluator anymore
2017-12-28 01:44:59 +01:00
Dave Halter
96a67f9a4c
Start using the correct parser for each environment
2017-12-19 19:19:35 +01:00
Dave Halter
5f2b49d039
Merge branch 'master' into virtualenv
2017-12-18 01:41:29 +01:00
Dave Halter
fe3e8a0867
Refactor environments a bit
2017-12-17 18:47:28 +01:00
Dave Halter
3a7bc92863
Use builtins_module instead of BUILTINS
2017-12-10 18:52:51 +01:00
Dave Halter
649225333f
Get the subprocess mostly working
2017-12-08 09:44:12 +01:00
Dave Halter
13f8f37547
Use even more subprocess accesses
2017-12-06 15:16:27 +01:00
Dave Halter
e71f0062dd
Get a lot of tests passing
2017-11-26 17:48:00 +01:00
Dave Halter
4dc2ad281d
Make some faked things private
2017-11-22 19:22:18 +01:00
Dave Halter
46b81dfa6d
Subprocess progress
...
Also add an enviornment variable to Script
2017-11-13 00:40:32 +01:00
Robin Roth
88cf592c95
Make goto work with await
...
Created together with @langsamer and @davidhalter
2017-10-28 14:10:05 +02:00
Dave Halter
51d2ffb078
Use sys path mostly from project and move some sys path stuff around.
2017-10-05 10:06:28 +02:00
Dave Halter
383f749026
Move the initial sys path generation into a new project class.
2017-10-02 20:19:55 +02:00
Dave Halter
b6bb251c96
Common instance objects are now directly accessible
2017-09-30 18:19:25 +02:00
Dave Halter
604ca65a9b
Directly importing FunctionContext.
2017-09-30 18:11:15 +02:00
Dave Halter
16011a91af
Move iterable to context/iterable.
2017-09-30 17:41:21 +02:00
Dave Halter
2c81bd919e
ClassContext is now importable from context.
2017-09-30 16:57:28 +02:00
Dave Halter
3c75f27376
Move the base Context stuff to another module to keep context free for imports.
2017-09-30 16:46:07 +02:00
Dave Halter
8c601a1c65
Also move the class to the context package.
2017-09-29 15:39:20 +02:00
Dave Halter
32917d5565
Remove the function context to a separate module.
2017-09-29 15:28:17 +02:00
Dave Halter
95930d293c
Move instance module to the context package.
2017-09-29 15:14:56 +02:00
Dave Halter
65ef6a3166
Move py__getitem__ to the context module.
2017-09-28 14:10:32 +02:00
Dave Halter
30df79e234
Rename py__iter__types to iterate_contexts.
2017-09-28 13:19:33 +02:00
Dave Halter
47c249957d
Make BuiltinMethod a Context object.
2017-09-28 12:04:44 +02:00
Dave Halter
d9d3aeb5bc
Move more functions to the syntax tree module.
2017-09-28 09:16:43 +02:00
Dave Halter
0782a80cef
Move all the search to py__getattribute__ and remove find_types.
2017-09-27 19:22:50 +02:00
Dave Halter
9073f0debc
Use the typical ordering of arguments for ClassContext.
2017-09-27 19:16:05 +02:00
Dave Halter
d584b698b7
Move eval_element and eval_stmt to the syntax tree module.
2017-09-27 18:14:04 +02:00
Dave Halter
b997b538a7
Move eval_atom to the syntax tree module.
2017-09-27 16:27:37 +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
313e1b3875
Use a different way of executing functions.
2017-09-27 16:07:24 +02:00
Dave Halter
025951089a
Some conversions of eval_element -> eval_node.
2017-09-27 15:17:11 +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
00f2f9a90c
Fix the final issues with the ContextSet refactoring.
2017-09-26 18:17:19 +02:00
Dave Halter
592f2dac95
A lot more fixes for tests.
2017-09-26 16:29:07 +02:00
Dave Halter
174eff5875
Replace a lot more of empty sets and unite calls.
2017-09-25 23:08:59 +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
a433ee7a7e
Move common to evaluate.utils.
2017-09-20 20:33:01 +02:00
Dave Halter
96ad254fcc
Typo.
2017-09-17 02:15:49 +02:00
Dave Halter
8fcb468539
Jedi was able to go crazy and loop endlessly in certain if/self assignment combinations.
...
Here we limit type inferance per tree scope. I'm still not sure this is the way
to go, but it looks okay for now and we can still go anther way in the future.
Tests are there.
Fixes #929 .
2017-09-17 02:04:42 +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
619acbd2ca
Goto didn't work well on imports in __init__.py files.
...
Fixes #956 .
2017-09-11 21:48:37 +02:00
Dave Halter
2f213f89e5
Remove code that was scheduled for removal.
2017-09-09 17:58:06 +02:00
Dave Halter
e85000b798
Replace memoize_default with two nicer functions.
2017-09-05 18:46:16 +02:00
Dave Halter
f69d8f1f29
_get_definition -> get_definition in parso.
2017-09-03 00:50:52 +02:00
Dave Halter
4795ed9071
More refactoring.
2017-09-03 00:39:15 +02:00
Dave Halter
6fb2f73f88
Some more refactorings.
2017-09-03 00:37:20 +02:00
Dave Halter
b64690afb8
Param defaults were not correctly followed when goto was used on them.
2017-09-03 00:22:59 +02:00
Dave Halter
333babea39
get_definition has now a new option.
2017-09-02 23:56:00 +02:00