Dave Halter
68a7365a0a
A few docstring improvements.
2017-03-14 21:03:03 +01:00
Dave Halter
9efb3f0af2
More direct parser usage removals.
2017-03-14 19:31:54 +01:00
Dave Halter
717bfeb574
Remove an occurance of the complicated parser creation.
2017-03-14 19:27:03 +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
Dave Halter
9b5e6d16da
Improved grammar loading API.
2017-03-13 20:33:29 +01:00
Dave Halter
595ffc24d4
Move some more stuff to a python directory in the parser.
2017-03-13 00:54:39 +01:00
Dave Halter
922c480e2e
Moved the parser to a new file.
2017-03-12 21:33:41 +01:00
Dave Halter
a635b6839a
Remove unused code.
2017-03-12 21:28:32 +01:00
Dave Halter
af9b0ba8d6
Merge branch 'master' into dev
2017-03-12 20:51:17 +01:00
Alex Wiltschko
82d165a723
Missing paren
2017-03-12 20:41:17 +01:00
Dave Halter
a7b1e3fe70
Fixed another diff parser error.
2017-03-12 15:58:14 +01:00
Dave Halter
6e3b00802c
Another endless while loop issue, add an assert.
2017-03-11 14:54:44 +01:00
Dave Halter
818fb4f60c
Fix a bug that might have caused an endless while loop a while ago. Fixes #878 .
2017-03-09 21:47:16 +01:00
Dave Halter
ccef008376
Python 2 compatibility.
2017-03-09 21:06:20 +01:00
Dave Halter
c7a74e6d1c
Make the tokenizer a generator.
2017-03-09 18:53:09 +01:00
Dave Halter
989e4bac89
Speed up splitlines.
...
We use the python function again with the modifications we need.
I ran it with:
python3 -m timeit -n 10000 -s 'from jedi.common import splitlines; x = open("test_regression.py").read()'
The speed differences are quite remarkable, it's ~3 times faster:
10000 loops, best of 3: 52.1 usec per loop
vs. the old:
10000 loops, best of 3: 148 usec per loop
We might need to speedup splitlines with as well. It's probably
also a factor 2-3 slower than it should be.
2017-03-09 08:58:57 +01:00
Dave Halter
b814a91f29
Avoid endless loop with an assert in the diff parser.
2017-03-08 18:33:38 +01:00
Dave Halter
5c9769c5a3
Merge remote-tracking branch 'origin/master' into dev
2017-03-07 19:01:53 +01:00
Dave Halter
ee98eab64c
Merge branch 'dev' of github.com:davidhalter/jedi into dev
2017-03-07 19:01:42 +01:00
Dave Halter
05e05252fa
Make python -m jedi.parser.tokenize possible for debugging purposes.
2017-03-07 18:31:12 +01:00
micbou
a859add6d7
Only resolve names for actual modules
...
A name can be part of an import statement without being a module.
2017-03-01 21:06:21 +01:00
Matthias Bussonnier
fc27ca1b6a
'fix a couple of error locations'
2017-02-24 13:03:03 +01:00
Matthias Bussonnier
784de85b36
Add test for handeling of newline in multiline strings
2017-02-24 00:05:38 +01:00
Matthias Bussonnier
0fb386d7e2
Make sure error token set the new_line flag when necessary
...
Should solve #855
2017-02-24 00:05:38 +01:00
daniel
5513f72987
added support for implicit ns packages and added tests
2017-02-23 23:53:14 +01:00
Matthias Bussonnier
ef1b1f41e4
Use start and end position in repr for simpler debugging.
2017-02-14 23:53:53 +01:00
Daniel M. Capella
68c6f8dd03
readme: Add maralla/completor.vim
...
https://github.com/maralla/completor.vim
2017-02-14 22:51:17 +01:00
Matthias Bussonnier
b72aa41019
Missing assert
2017-02-08 23:40:23 +01:00
Thomas Kluyver
adc08785b6
Build universal wheels
...
This tells wheel that the packages are compatible with Python 2 and 3.
The wheel currently on PyPI is only tagged 'py2', so installing on
Python 3 uses the sdist.
2017-02-04 18:13:18 +01:00
Dave Halter
8131f19751
Correct an issue in the tests with the last commit.
2017-02-04 18:11:54 +01:00
Dave Halter
b6e61133d8
Move the tests for the last PR #848 .
2017-02-04 18:11:14 +01:00
Mathias Rav
37d7b85ed1
Add tests for decorator completion
2017-02-04 18:05:15 +01:00
Mathias Rav
c6cd18802b
Add myself as contributor
2017-02-04 18:05:15 +01:00
Mathias Rav
c809aad67f
Complete dotted names properly in decorators
...
Outside decorators, a dotted name is parsed by the grammar as
stmt -> test -> power -> atom trailer -> (NAME) ('.' NAME)
where the first NAME is an 'atom' and the second NAME is a 'trailer'.
Thus, testing if the most recent variable is a 'trailer' and the most
recent node is a '.' is almost always enough for Jedi to properly
complete dotted names.
However, the grammar for decorators is more restricted and doesn't allow
arbitrary atoms and trailers; instead, a dotted name in a decorator is
decorator -> '@' dotted_name -> '@' (NAME '.' NAME),
meaning the most recent variable will be 'dotted_name', not 'trailer'.
Besides in decorators, the 'dotted_name' variable is only used in import
statements which are handled previously in _get_context_completions,
so checking for 'dotted_name' in this arm of the if only covers decorators
and not inadvertently anything else.
2017-02-04 18:05:15 +01:00
Dave Halter
1d64a5caa1
Replace first_leaf and last_leaf with get_first_leaf and get_last_leaf.
2017-02-03 17:35:53 +01:00
Dave Halter
90fffd883e
Clean up the function docstring.
2017-02-03 17:30:58 +01:00
Dave Halter
647aec11a6
Return None instead of raising an IndexError in get_next_leaf.
2017-02-03 17:26:02 +01:00
Dave Halter
c5071f9f49
Change get_previous_leaf to return None if there is no leaf anymore (at the start of the file).
2017-02-03 17:23:15 +01:00
Dave Halter
445bf6c419
Get rid of get_parent_until.
2017-02-03 09:59:32 +01:00
Dave Halter
b3cb7b5490
Remove the def isinstance from the parser. It was a really bad pattern.
2017-02-03 09:37:59 +01:00
Dave Halter
6ccac94162
Add a deploy script.
2017-02-03 00:40:19 +01:00
Dave Halter
f2b41b1752
Update already the version number so we don't forget it.
2017-02-03 00:38:08 +01:00
Dave Halter
7020086166
Changelog for 0.10.0
v0.10.0
2017-02-03 00:08:51 +01:00
Dave Halter
8027aeebd8
Fix a small bug that was raised two commits ago (in the test suite).
2017-02-02 23:50:29 +01:00
Dave Halter
f627d541b8
Trying to fix the docs.
2017-02-02 23:39:10 +01:00
Dave Halter
a5a54fbc85
Fix a call signature issue.
2017-02-01 19:21:07 +01:00
Dave Halter
68a3a9cf41
Don't do anything with the diff parser if nothing changes.
2017-01-29 22:12:24 +01:00
Dave Halter
e5af996829
Remove old debug code from the diff parser.
2017-01-29 21:57:09 +01:00
Dave Halter
e0c8b3dd3b
Fix an context issue in completions.
2017-01-29 19:09:35 +01:00
Dave Halter
3f1e658e1d
Set the limit for debugging failed diff parsers a bit higher.
2017-01-29 14:34:20 +01:00