Dave Halter
fac5c089ff
Merge pull request #173 from bryanforbes/fix-non-default-error
...
Only apply non-default params logic prior to the star (fixes #161 )
2021-02-21 22:55:40 +01:00
Bryan Forbes
e5731d3932
Only apply non-default params logic prior to the star ( fixes #161 )
2021-02-15 19:33:44 -06:00
Dave Halter
93206f6eba
Merge pull request #170 from pjvandehaar/master
...
Show path in warning message
2021-01-26 22:41:17 +01:00
Peter VandeHaar
cbe0b91d6a
Show path in warning message
2021-01-26 15:00:00 -05:00
Dave Halter
771fe6bf33
Merge pull request #169 from PeterJCLaw/add-start-end-pos-types
...
Add type annotations to start- and end-pos attributes
2021-01-03 21:12:00 +01:00
Peter Law
1139e53429
Inline these type annotations
...
No need for comments for these since Python 3.5 isn't supported.
2021-01-03 17:55:16 +00:00
Peter Law
0e20c33c21
Add type annotations to start- and end-pos attributes
...
These are frequently used within consuming code, so having annotations
avoids others needing to work around mypy errors from them.
2021-01-03 15:57:53 +00:00
Dave Halter
14c88c1f4b
Merge pull request #168 from pybpc/fix-delete-starred
...
Fix various issues regarding starred expressions
2021-01-01 22:06:06 +01:00
gousaiyang
257ac768fb
Parenthesized single starred expression (*x) is no longer valid anywhere in Python 3.9+
2020-12-30 17:14:39 -08:00
gousaiyang
79aeb2a801
Fix various issues regarding starred expressions
...
- Properly check for starred expression deletion
- Check for starred expressions not in tuple/list/set (when not in assignment)
- Fix a bug that considered starred expression assignment `[*x] = 1` as invalid
- Enhance test cases for valid and invalid `del` statements and starred expressions
2020-12-30 13:11:59 -08:00
Dave Halter
ef90bba3b3
Flake8 improvements
2020-12-11 02:04:23 +01:00
Dave Halter
a9d0cc1179
Release parso 0.8.1
v0.8.1
2020-12-10 16:09:05 +01:00
Dave Halter
f45ffa1948
Merge pull request #162 from pybpc/walrus-set-and-index
...
Allow unparenthesized walrus in set literals, set comprehensions and indexes
2020-12-10 15:27:56 +01:00
gousaiyang
b287476366
Allow unparenthesized walrus in set literals, set comprehensions and indexes
2020-11-27 14:46:54 -08:00
Tim Hatch
d39aadc4cc
Support named unicode characters in f-strings ( #160 )
...
* Support named unicode characters in f-strings
Fixes #154
The previous behavior misinterpreted the curly braces as enclosing an
expression. This change does some cursory validation so we can still
get parse errors in the most egregious cases, but does not validate that
the names are actually valid, only that they are name-shaped and have a
chance of being valid.
The character names appear to obey a few rules:
* Case insensitive
* Name characters are `[A-Z0-9 \-]`
* Whitespace before or after is not allowed
* Whitespace in the middle may only be a single space between words
* Dashes may occur at the start or middle of a word
```py
f"\N{A B}" # might be legal
f"\N{a b}" # equivalent to above
f"\N{A B}" # no way
f"\N{ A B }" # no way
f"""\N{A
B}""" # no way
```
For confirming this regex matches all (current) unicode character names:
```py
import re
import sys
import unicodedata
R = re.compile(r"[A-Za-z0-9\-]+(?: [A-Za-z0-9\-]+)*")
for i in range(sys.maxunicode):
try:
name = unicodedata.name(chr(i))
except ValueError:
# Some small values like 0 and 1 have no name, /shrug
continue
m = R.fullmatch(name)
if m is None:
print("FAIL", repr(name))
```
* Improve tests for named unicode escapes
2020-11-22 15:37:04 +03:00
Saiyang Gou
b08b61b578
Allow some unparenthesized syntactic structures in f-string expression part ( #159 )
...
Resolves #157 , #158
2020-11-19 16:32:59 +03:00
Saiyang Gou
034a9e8944
Properly check for invalid conversion character with f-string debugging syntax ( #156 )
2020-11-18 12:56:04 +03:00
Dave Halter
634df56d90
Merge pull request #152 from isidentical/issue-151
...
Retrieve all kinds of assignment targets from with test
2020-09-29 00:14:19 +02:00
Batuhan Taskaya
52cfa5a8ac
satisfy flake8
2020-09-24 10:48:22 +03:00
Batuhan Taskaya
606c528803
Retrieve all kinds of assignment targets from with test
2020-09-24 10:42:56 +03:00
Dave Halter
6ae0efa415
Prepare the 0.8.0 release
v0.8.0
2020-08-05 00:51:16 +02:00
Dave Halter
1714c1d0de
Make namedexpr_test a proper NamedExpr class
2020-08-05 00:26:16 +02:00
Dave Halter
6405a1227f
Merge pull request #146 from davidhalter/python3
...
Dropping Python <3.6
2020-07-26 13:30:32 +02:00
Dave Halter
cb7d15b332
Prepare the CHANGELOG
2020-07-26 13:19:41 +02:00
Dave Halter
0dec1a4003
Another review suggestion
2020-07-26 13:16:41 +02:00
Dave Halter
020d7a9acb
Use a better intersphinx mapping
2020-07-26 13:16:41 +02:00
Dave Halter
f79432ecab
Remove support for multiple languages, which was never used
2020-07-26 13:16:41 +02:00
Dave Halter
b0de7e363a
Don't use print if not necessary
2020-07-26 13:16:41 +02:00
Dave Halter
f6859538b0
Simplify a cache path
...
Co-authored-by: Batuhan Taskaya <batuhanosmantaskaya@gmail.com >
2020-07-26 13:03:58 +02:00
Dave Halter
ea6b01b968
Use pathlib.Path instead of strings
2020-07-26 01:19:41 +02:00
Dave Halter
97c10facf7
Remove super arguments
2020-07-25 23:54:21 +02:00
Dave Halter
dcc756a373
Remove object inheritance
2020-07-25 18:20:56 +02:00
Dave Halter
3c3c0b54dc
Fix some remaining flake8 issues
2020-07-25 18:17:11 +02:00
Dave Halter
70ec8eecd1
Fix some last mypy issues
2020-07-25 18:16:01 +02:00
Dave Halter
d3c274afa0
Fix an issue with encoding detection
2020-07-25 18:11:49 +02:00
Dave Halter
6a4bb35d80
Removed stubs from generator and grammar_parser and put the annotations into the corresponding files
2020-07-25 18:09:12 +02:00
Dave Halter
ce0fac7630
Move grammar stubs into grammar.py
2020-07-25 17:48:01 +02:00
Dave Halter
395af26fa8
Removed parso/__init__.pyi
...
It is intentional that the parse function is not typed. It's just a
helper function. For a typed version of it, please have a look at
Grammar.parse.
2020-07-25 16:22:35 +02:00
Dave Halter
e65fb2464e
Remove utils.pyi in favor of inline stubs
2020-07-25 16:20:26 +02:00
Dave Halter
4d86f0fdcc
Remove the pgen2 stub, didn't really contain anything
2020-07-25 16:12:41 +02:00
Dave Halter
b816c00e77
Remove the token stub in favor of inline annotations
2020-07-25 16:12:04 +02:00
Dave Halter
2197e4c9e8
Fix a linter issue
2020-07-25 15:59:33 +02:00
Dave Halter
b176ed6eee
Run mypy and flake8 in CI
2020-07-25 15:54:55 +02:00
Dave Halter
67904f4d24
Make mypy happy
2020-07-25 15:43:28 +02:00
Dave Halter
8a34245239
Get rid of mypy issues with tokenize.py
2020-07-25 15:34:29 +02:00
Dave Halter
a474895764
Start working with mypy
2020-07-25 15:05:42 +02:00
Dave Halter
34152d29b2
Initializing a Grammar now uses keyword only arguments
2020-07-25 14:33:42 +02:00
Dave Halter
d9f60b3473
Remove compatibility in parser for Python 2
2020-07-25 02:38:46 +02:00
Dave Halter
75b467e681
Some more small Python 3 changes
2020-07-25 02:33:24 +02:00
Dave Halter
02eb9b9507
Use keyword only arguments in grammar.py
2020-07-25 02:21:51 +02:00