|
75 | 75 | cmdoptions.config_settings,
|
76 | 76 | ]
|
77 | 77 |
|
| 78 | +SUPPORTED_OPTIONS_EDITABLE_REQ: List[Callable[..., optparse.Option]] = [ |
| 79 | + cmdoptions.config_settings, |
| 80 | +] |
| 81 | + |
| 82 | + |
78 | 83 | # the 'dest' string values
|
79 | 84 | SUPPORTED_OPTIONS_REQ_DEST = [str(o().dest) for o in SUPPORTED_OPTIONS_REQ]
|
| 85 | +SUPPORTED_OPTIONS_EDITABLE_REQ_DEST = [ |
| 86 | + str(o().dest) for o in SUPPORTED_OPTIONS_EDITABLE_REQ |
| 87 | +] |
80 | 88 |
|
81 | 89 | logger = logging.getLogger(__name__)
|
82 | 90 |
|
@@ -178,31 +186,25 @@ def handle_requirement_line(
|
178 | 186 |
|
179 | 187 | assert line.is_requirement
|
180 | 188 |
|
| 189 | + # get the options that apply to requirements |
181 | 190 | if line.is_editable:
|
182 |
| - # For editable requirements, we don't support per-requirement |
183 |
| - # options, so just return the parsed requirement. |
184 |
| - return ParsedRequirement( |
185 |
| - requirement=line.requirement, |
186 |
| - is_editable=line.is_editable, |
187 |
| - comes_from=line_comes_from, |
188 |
| - constraint=line.constraint, |
189 |
| - ) |
| 191 | + supported_dest = SUPPORTED_OPTIONS_EDITABLE_REQ_DEST |
190 | 192 | else:
|
191 |
| - # get the options that apply to requirements |
192 |
| - req_options = {} |
193 |
| - for dest in SUPPORTED_OPTIONS_REQ_DEST: |
194 |
| - if dest in line.opts.__dict__ and line.opts.__dict__[dest]: |
195 |
| - req_options[dest] = line.opts.__dict__[dest] |
196 |
| - |
197 |
| - line_source = f"line {line.lineno} of {line.filename}" |
198 |
| - return ParsedRequirement( |
199 |
| - requirement=line.requirement, |
200 |
| - is_editable=line.is_editable, |
201 |
| - comes_from=line_comes_from, |
202 |
| - constraint=line.constraint, |
203 |
| - options=req_options, |
204 |
| - line_source=line_source, |
205 |
| - ) |
| 193 | + supported_dest = SUPPORTED_OPTIONS_REQ_DEST |
| 194 | + req_options = {} |
| 195 | + for dest in supported_dest: |
| 196 | + if dest in line.opts.__dict__ and line.opts.__dict__[dest]: |
| 197 | + req_options[dest] = line.opts.__dict__[dest] |
| 198 | + |
| 199 | + line_source = f"line {line.lineno} of {line.filename}" |
| 200 | + return ParsedRequirement( |
| 201 | + requirement=line.requirement, |
| 202 | + is_editable=line.is_editable, |
| 203 | + comes_from=line_comes_from, |
| 204 | + constraint=line.constraint, |
| 205 | + options=req_options, |
| 206 | + line_source=line_source, |
| 207 | + ) |
206 | 208 |
|
207 | 209 |
|
208 | 210 | def handle_option_line(
|
|
0 commit comments