1
+ from __future__ import annotations
2
+
1
3
import dataclasses
2
- from typing import Any , Dict , List , Mapping , Optional , Sequence
4
+ from typing import Any , Mapping , Sequence
3
5
4
6
import bashlex
5
7
@@ -12,7 +14,7 @@ class EnvironmentParseError(Exception):
12
14
pass
13
15
14
16
15
- def split_env_items (env_string : str ) -> List [str ]:
17
+ def split_env_items (env_string : str ) -> list [str ]:
16
18
"""Splits space-separated variable assignments into a list of individual assignments.
17
19
18
20
>>> split_env_items('VAR=abc')
@@ -47,8 +49,8 @@ class EnvironmentAssignment(Protocol):
47
49
def evaluated_value (
48
50
self ,
49
51
* ,
50
- environment : Dict [str , str ],
51
- executor : Optional [ bashlex_eval .EnvironmentExecutor ] = None ,
52
+ environment : dict [str , str ],
53
+ executor : bashlex_eval .EnvironmentExecutor | None = None ,
52
54
) -> str :
53
55
"""Returns the value of this assignment, as evaluated in the environment"""
54
56
@@ -84,8 +86,8 @@ def __init__(self, assignment: str):
84
86
85
87
def evaluated_value (
86
88
self ,
87
- environment : Dict [str , str ],
88
- executor : Optional [ bashlex_eval .EnvironmentExecutor ] = None ,
89
+ environment : dict [str , str ],
90
+ executor : bashlex_eval .EnvironmentExecutor | None = None ,
89
91
) -> str :
90
92
return bashlex_eval .evaluate (self .value , environment = environment , executor = executor )
91
93
@@ -100,16 +102,16 @@ def __eq__(self, other: object) -> bool:
100
102
101
103
@dataclasses .dataclass
102
104
class ParsedEnvironment :
103
- assignments : List [EnvironmentAssignment ]
105
+ assignments : list [EnvironmentAssignment ]
104
106
105
107
def __init__ (self , assignments : Sequence [EnvironmentAssignment ]) -> None :
106
108
self .assignments = list (assignments )
107
109
108
110
def as_dictionary (
109
111
self ,
110
112
prev_environment : Mapping [str , str ],
111
- executor : Optional [ bashlex_eval .EnvironmentExecutor ] = None ,
112
- ) -> Dict [str , str ]:
113
+ executor : bashlex_eval .EnvironmentExecutor | None = None ,
114
+ ) -> dict [str , str ]:
113
115
environment = dict (** prev_environment )
114
116
115
117
for assignment in self .assignments :
0 commit comments