Skip to content

Commit 69af3f0

Browse files
authored
drop support for Python 3.9 (#897)
1 parent 0d26449 commit 69af3f0

File tree

20 files changed

+480
-543
lines changed

20 files changed

+480
-543
lines changed

.github/workflows/tests.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ jobs:
2020
- MacOS
2121
- Windows
2222
python-version:
23-
- "3.9"
2423
- "3.10"
2524
- "3.11"
2625
- "3.12"

poetry.lock

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ maintainers = [
1515
{ name = "Bartosz Sokorski", email = "[email protected]" },
1616
]
1717
license = "MIT"
18-
requires-python = ">=3.9, <4.0"
18+
requires-python = ">=3.10, <4.0"
1919
readme = "README.md"
2020
keywords = ["packaging", "dependency", "poetry"]
2121
dynamic = ["classifiers"]
@@ -64,7 +64,6 @@ extend-exclude = [
6464
fix = true
6565
line-length = 88
6666
src = ["src"]
67-
target-version = "py39"
6867

6968
[tool.ruff.lint]
7069
extend-select = [
Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
Copyright © 2017 Erez Shinan
2-
3-
Permission is hereby granted, free of charge, to any person obtaining a copy of
4-
this software and associated documentation files (the "Software"), to deal in
5-
the Software without restriction, including without limitation the rights to
6-
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
7-
the Software, and to permit persons to whom the Software is furnished to do so,
8-
subject to the following conditions:
9-
10-
The above copyright notice and this permission notice shall be included in all
11-
copies or substantial portions of the Software.
12-
13-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
15-
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
16-
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
17-
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
18-
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1+
Copyright © 2017 Erez Shinan
2+
3+
Permission is hereby granted, free of charge, to any person obtaining a copy of
4+
this software and associated documentation files (the "Software"), to deal in
5+
the Software without restriction, including without limitation the rights to
6+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
7+
the Software, and to permit persons to whom the Software is furnished to do so,
8+
subject to the following conditions:
9+
10+
The above copyright notice and this permission notice shall be included in all
11+
copies or substantial portions of the Software.
12+
13+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
15+
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
16+
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
17+
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
18+
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Lines changed: 59 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,59 @@
1-
// Basic terminals for common use
2-
3-
4-
//
5-
// Numbers
6-
//
7-
8-
DIGIT: "0".."9"
9-
HEXDIGIT: "a".."f"|"A".."F"|DIGIT
10-
11-
INT: DIGIT+
12-
SIGNED_INT: ["+"|"-"] INT
13-
DECIMAL: INT "." INT? | "." INT
14-
15-
// float = /-?\d+(\.\d+)?([eE][+-]?\d+)?/
16-
_EXP: ("e"|"E") SIGNED_INT
17-
FLOAT: INT _EXP | DECIMAL _EXP?
18-
SIGNED_FLOAT: ["+"|"-"] FLOAT
19-
20-
NUMBER: FLOAT | INT
21-
SIGNED_NUMBER: ["+"|"-"] NUMBER
22-
23-
//
24-
// Strings
25-
//
26-
_STRING_INNER: /.*?/
27-
_STRING_ESC_INNER: _STRING_INNER /(?<!\\)(\\\\)*?/
28-
29-
ESCAPED_STRING : "\"" _STRING_ESC_INNER "\""
30-
31-
32-
//
33-
// Names (Variables)
34-
//
35-
LCASE_LETTER: "a".."z"
36-
UCASE_LETTER: "A".."Z"
37-
38-
LETTER: UCASE_LETTER | LCASE_LETTER
39-
WORD: LETTER+
40-
41-
CNAME: ("_"|LETTER) ("_"|LETTER|DIGIT)*
42-
43-
44-
//
45-
// Whitespace
46-
//
47-
WS_INLINE: (" "|/\t/)+
48-
WS: /[ \t\f\r\n]/+
49-
50-
CR : /\r/
51-
LF : /\n/
52-
NEWLINE: (CR? LF)+
53-
54-
55-
// Comments
56-
SH_COMMENT: /#[^\n]*/
57-
CPP_COMMENT: /\/\/[^\n]*/
58-
C_COMMENT: "/*" /(.|\n)*?/ "*/"
59-
SQL_COMMENT: /--[^\n]*/
1+
// Basic terminals for common use
2+
3+
4+
//
5+
// Numbers
6+
//
7+
8+
DIGIT: "0".."9"
9+
HEXDIGIT: "a".."f"|"A".."F"|DIGIT
10+
11+
INT: DIGIT+
12+
SIGNED_INT: ["+"|"-"] INT
13+
DECIMAL: INT "." INT? | "." INT
14+
15+
// float = /-?\d+(\.\d+)?([eE][+-]?\d+)?/
16+
_EXP: ("e"|"E") SIGNED_INT
17+
FLOAT: INT _EXP | DECIMAL _EXP?
18+
SIGNED_FLOAT: ["+"|"-"] FLOAT
19+
20+
NUMBER: FLOAT | INT
21+
SIGNED_NUMBER: ["+"|"-"] NUMBER
22+
23+
//
24+
// Strings
25+
//
26+
_STRING_INNER: /.*?/
27+
_STRING_ESC_INNER: _STRING_INNER /(?<!\\)(\\\\)*?/
28+
29+
ESCAPED_STRING : "\"" _STRING_ESC_INNER "\""
30+
31+
32+
//
33+
// Names (Variables)
34+
//
35+
LCASE_LETTER: "a".."z"
36+
UCASE_LETTER: "A".."Z"
37+
38+
LETTER: UCASE_LETTER | LCASE_LETTER
39+
WORD: LETTER+
40+
41+
CNAME: ("_"|LETTER) ("_"|LETTER|DIGIT)*
42+
43+
44+
//
45+
// Whitespace
46+
//
47+
WS_INLINE: (" "|/\t/)+
48+
WS: /[ \t\f\r\n]/+
49+
50+
CR : /\r/
51+
LF : /\n/
52+
NEWLINE: (CR? LF)+
53+
54+
55+
// Comments
56+
SH_COMMENT: /#[^\n]*/
57+
CPP_COMMENT: /\/\/[^\n]*/
58+
C_COMMENT: "/*" /(.|\n)*?/ "*/"
59+
SQL_COMMENT: /--[^\n]*/
Lines changed: 62 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,62 @@
1-
# Lark grammar of Lark's syntax
2-
# Note: Lark is not bootstrapped, its parser is implemented in load_grammar.py
3-
4-
start: (_item? _NL)* _item?
5-
6-
_item: rule
7-
| token
8-
| statement
9-
10-
rule: RULE rule_params priority? ":" expansions
11-
token: TOKEN token_params priority? ":" expansions
12-
13-
rule_params: ["{" RULE ("," RULE)* "}"]
14-
token_params: ["{" TOKEN ("," TOKEN)* "}"]
15-
16-
priority: "." NUMBER
17-
18-
statement: "%ignore" expansions -> ignore
19-
| "%import" import_path ["->" name] -> import
20-
| "%import" import_path name_list -> multi_import
21-
| "%override" rule -> override_rule
22-
| "%declare" name+ -> declare
23-
24-
!import_path: "."? name ("." name)*
25-
name_list: "(" name ("," name)* ")"
26-
27-
?expansions: alias (_VBAR alias)*
28-
29-
?alias: expansion ["->" RULE]
30-
31-
?expansion: expr*
32-
33-
?expr: atom [OP | "~" NUMBER [".." NUMBER]]
34-
35-
?atom: "(" expansions ")"
36-
| "[" expansions "]" -> maybe
37-
| value
38-
39-
?value: STRING ".." STRING -> literal_range
40-
| name
41-
| (REGEXP | STRING) -> literal
42-
| name "{" value ("," value)* "}" -> template_usage
43-
44-
name: RULE
45-
| TOKEN
46-
47-
_VBAR: _NL? "|"
48-
OP: /[+*]|[?](?![a-z])/
49-
RULE: /!?[_?]?[a-z][_a-z0-9]*/
50-
TOKEN: /_?[A-Z][_A-Z0-9]*/
51-
STRING: _STRING "i"?
52-
REGEXP: /\/(?!\/)(\\\/|\\\\|[^\/])*?\/[imslux]*/
53-
_NL: /(\r?\n)+\s*/
54-
55-
%import common.ESCAPED_STRING -> _STRING
56-
%import common.SIGNED_INT -> NUMBER
57-
%import common.WS_INLINE
58-
59-
COMMENT: /\s*/ "//" /[^\n]/* | /\s*/ "#" /[^\n]/*
60-
61-
%ignore WS_INLINE
62-
%ignore COMMENT
1+
# Lark grammar of Lark's syntax
2+
# Note: Lark is not bootstrapped, its parser is implemented in load_grammar.py
3+
4+
start: (_item? _NL)* _item?
5+
6+
_item: rule
7+
| token
8+
| statement
9+
10+
rule: RULE rule_params priority? ":" expansions
11+
token: TOKEN token_params priority? ":" expansions
12+
13+
rule_params: ["{" RULE ("," RULE)* "}"]
14+
token_params: ["{" TOKEN ("," TOKEN)* "}"]
15+
16+
priority: "." NUMBER
17+
18+
statement: "%ignore" expansions -> ignore
19+
| "%import" import_path ["->" name] -> import
20+
| "%import" import_path name_list -> multi_import
21+
| "%override" rule -> override_rule
22+
| "%declare" name+ -> declare
23+
24+
!import_path: "."? name ("." name)*
25+
name_list: "(" name ("," name)* ")"
26+
27+
?expansions: alias (_VBAR alias)*
28+
29+
?alias: expansion ["->" RULE]
30+
31+
?expansion: expr*
32+
33+
?expr: atom [OP | "~" NUMBER [".." NUMBER]]
34+
35+
?atom: "(" expansions ")"
36+
| "[" expansions "]" -> maybe
37+
| value
38+
39+
?value: STRING ".." STRING -> literal_range
40+
| name
41+
| (REGEXP | STRING) -> literal
42+
| name "{" value ("," value)* "}" -> template_usage
43+
44+
name: RULE
45+
| TOKEN
46+
47+
_VBAR: _NL? "|"
48+
OP: /[+*]|[?](?![a-z])/
49+
RULE: /!?[_?]?[a-z][_a-z0-9]*/
50+
TOKEN: /_?[A-Z][_A-Z0-9]*/
51+
STRING: _STRING "i"?
52+
REGEXP: /\/(?!\/)(\\\/|\\\\|[^\/])*?\/[imslux]*/
53+
_NL: /(\r?\n)+\s*/
54+
55+
%import common.ESCAPED_STRING -> _STRING
56+
%import common.SIGNED_INT -> NUMBER
57+
%import common.WS_INLINE
58+
59+
COMMENT: /\s*/ "//" /[^\n]/* | /\s*/ "#" /[^\n]/*
60+
61+
%ignore WS_INLINE
62+
%ignore COMMENT

0 commit comments

Comments
 (0)