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
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
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
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
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
Dave Halter
40b6079ebd
If an INDENT is the next supposed token, we should still be able to complete.
2017-01-29 14:06:22 +01:00
Dave Halter
b0f340748c
So much work for one simple diff fail.
2017-01-29 00:42:09 +01:00
Dave Halter
b779677bf9
Merge branch 'dev' of github.com:davidhalter/jedi into dev
2017-01-25 23:21:45 +01:00
Dave Halter
b18239f9dd
Add a way to profile the diff parser.
2017-01-25 23:00:33 +01:00
Dave Halter
9982975ad2
Another small performance improvement.
2017-01-25 22:54:08 +01:00
Dave Halter
4918fb49f5
Implement binary search for get_leaf_for_position. This makes it a lot faster.
2017-01-25 22:27:36 +01:00
Dave Halter
f2db0dceb4
A few small performances improvements on the diff parser.
2017-01-25 21:12:13 +01:00
Dave Halter
dfced86730
Merge pull request #834 from Carreau/fix-keyword
...
Fix keywords detected as modules
2017-01-24 13:27:49 +01:00
Dave Halter
551c122cf8
Fix an issue in sith where there we have accessed a removed Jedi property.
2017-01-24 09:57:43 +01:00
Dave Halter
f4b8a02d37
Add a few speed debugging times to the diff parser.
2017-01-24 09:51:23 +01:00
Dave Halter
09779c88aa
Fix a nasty issue in the tokenizer. Fixes #836 .
...
At the same time there was a related issue of not cleaning up newlines properly.
2017-01-24 00:50:37 +01:00
Dave Halter
741993a738
Merge branch 'dev' of github.com:davidhalter/jedi into dev
2017-01-23 20:37:34 +01:00
Dave Halter
e7fcc21863
Remove both MergedNodes and AlreadyEvaluated, they are unused.
2017-01-23 20:36:26 +01:00
Dave Halter
7623b1e350
Removed tree.is_node.
...
It's not needed anymore, because we have Node/Leaf.type now.
2017-01-23 20:34:30 +01:00
Dave Halter
64abe401ed
The position modifier is not used anymore.
2017-01-23 20:12:17 +01:00
Dave Halter
d85ceb9222
More cleanups in the parser.
2017-01-23 20:10:02 +01:00
Dave Halter
645841d98c
Remove more unused code.
2017-01-23 19:51:30 +01:00
Dave Halter
b286f3aef0
Merge pull request #832 from Carreau/more-docs
...
Improve some documentation about name_with_symbols, name and completion.
2017-01-23 15:00:45 +01:00
Dave Halter
01b25efea1
Use the same function to detect newlines in the diff parser.
2017-01-23 09:56:38 +01:00
Dave Halter
1caa2ceafa
Cannot use sys.version.major and minor names, because in Python 2.6 it's
...
not a namedtuple.
2017-01-23 01:09:01 +01:00
Dave Halter
8d2ec6556e
Fix a Python 2.7 issue.
2017-01-23 00:36:57 +01:00
Dave Halter
1ff7ecc7af
Remove jedi.settings.add_dot_after_module that was removed a while ago from documentation.
2017-01-23 00:12:02 +01:00
Dave Halter
194295066a
Fix one more issue in the diff parser.
2017-01-22 23:44:10 +01:00
Dave Halter
08c66207ec
Fix the last diff parser test.
2017-01-22 20:27:11 +01:00
Dave Halter
dca35393d5
Remove old code from the diff parser.
2017-01-22 20:22:20 +01:00
Dave Halter
8f4b862892
Fix most diff tests.
2017-01-22 20:13:18 +01:00
Dave Halter
005b24ed54
Better handling of the stack.
2017-01-21 18:43:54 +01:00
Dave Halter
21cd10cefd
Get a few diff tests passing.
2017-01-20 20:46:30 +01:00
Dave Halter
73b2287fb4
Fix some tests.
2017-01-20 18:12:09 +01:00
Dave Halter
ebfae050a8
Delete a lof of duplicate code.
2017-01-19 18:31:53 +01:00
Dave Halter
ef31c3d1f4
Some asserts pass now in the tests.
2017-01-19 18:26:50 +01:00
Dave Halter
3bf5f93edd
Progress in using a stack in the diff parser.
2017-01-19 09:44:07 +01:00
Dave Halter
fe44458ec0
Start implementing the node stack.
2017-01-16 16:32:49 +01:00
Dave Halter
98185d530e
Simplify deep_ast_parser a lot.
2017-01-12 21:51:02 +01:00
Dave Halter
ad1222e6d7
Fix another parser bug.
2017-01-12 08:46:58 +01:00
Dave Halter
0141711af8
Diff parser docstring.
2017-01-10 19:17:37 +01:00
Dave Halter
425fba5e95
Move the parser.fast module to parser.diff.
2017-01-10 19:15:47 +01:00
Dave Halter
1edccbe2c3
Improve literal tests.
2017-01-08 19:52:21 +01:00
Dave Halter
7300f3e7ef
Fix issues with Python 3.6's f strings and underscores in numbers.
2017-01-08 19:39:14 +01:00
Dave Halter
00a9f1ec0a
Update the tokenizer to include f literals and underscores. Need tests still.
2017-01-08 16:03:45 +01:00
Dave Halter
3f09f3a304
Add support for PEP 0526.
...
This makes it possible to assign variables like
asdf: typing.List[int] = []
2017-01-08 03:57:35 +01:00
Dave Halter
6d00a5702f
If newer versions are using Jedi (e.g. at the moment Python 3.7), it shouldn't just result in a grammar issue, just because that grammar doesn't not exist. Just take the Python 3.6 grammar instead.
2017-01-07 15:54:04 +01:00
Dave Halter
aff3950085
Better async testing.
2017-01-07 15:40:55 +01:00
Dave Halter
6a18ddf8cb
Fix await issues. At the moment Jedi is just ignoring await statements.
2017-01-07 15:27:32 +01:00
Dave Halter
d3c437e891
Restructure yield code to make it less error prone.
2017-01-07 12:43:15 +01:00
Dave Halter
1f15ee8bc7
Fix an issue with contexts.
2017-01-06 00:08:01 +01:00
Dave Halter
ae8e43d3c7
Move get_node() to tree_node and replace all the custom classdefs/funcdefs.
2017-01-05 23:43:12 +01:00
Dave Halter
b44f0aae5d
Remove the origin_scope from filters that don't need it.
2017-01-05 21:57:06 +01:00
Dave Halter
89ec207f49
Add a failing test for an inheritanc context completion issue.
2017-01-05 21:50:15 +01:00
Dave Halter
9fb2644f03
Fix an issue with creating contexts.
2017-01-05 18:05:24 +01:00
Dave Halter
12a9ef48f7
Move the completion tests.
2017-01-04 22:34:43 +01:00
Dave Halter
9341df11bf
Fix the issues that were changed by removing start_pos from the api classes.
2017-01-04 22:24:25 +01:00
Dave Halter
e96fd32588
Fix an issue of params completion signatures.
2017-01-04 22:09:08 +01:00
Dave Halter
55ec47f15f
Test module attributes.
2017-01-04 18:32:16 +01:00
Dave Halter
0caeef2589
Remove the deprecated start_pos.
2017-01-04 18:23:41 +01:00
Dave Halter
01099ce5a9
Create a name for the generators.
2017-01-04 18:12:33 +01:00
Dave Halter
cd23499fbe
Fix param issues in goto definition.
2017-01-04 08:58:29 +01:00
Dave Halter
24457bfe2e
Fix some usage cases of comprehensions.
2017-01-03 02:15:04 +01:00
Dave Halter
306fd5b95b
Fix a recursion issue.
2017-01-02 23:57:59 +01:00
Dave Halter
c7241068e8
Fix an issue with call signatures in empty files.
2017-01-02 19:39:48 +01:00
Dave Halter
5d071ede8c
Fix the typing module issues in Python 3.6.
2017-01-02 15:01:12 +01:00
Dave Halter
5b9e5f96aa
Merge with master.
2017-01-02 13:05:45 +01:00
Dave Halter
96bb9e3c1a
LazyContext.infer() should return a set.
2017-01-02 12:15:09 +01:00
Dave Halter
f05c0714c7
Merge pull request #823 from fsouza/grammar-3.6
...
parser: add grammar3.6
2017-01-02 12:13:56 +01:00
Dave Halter
375fcd9e66
Fix an issue with nested flows in the diff parser.
2016-12-31 03:12:56 +01:00
Dave Halter
29e286488b
Fix the last remaining fail in the diff parser.
2016-12-30 21:13:44 +01:00
Dave Halter
c4eec88fc9
Reenable some tests that were somehow disabled.
2016-12-30 20:47:40 +01:00
Dave Halter
61c7444185
Fix some more issues in the diff parser that caused it to completely crash.
2016-12-30 20:13:05 +01:00
Dave Halter
b3f9b9eed3
Trying to refactor divide_nodes into a more general state.
2016-12-23 18:20:09 +01:00