|
22 | 22 | THE SOFTWARE. |
23 | 23 | """ |
24 | 24 |
|
25 | | -import threading |
26 | | -import queue |
27 | 25 | import json |
28 | | -from enum import Enum |
29 | | -from typing import Dict, Optional, Set |
| 26 | +import queue |
| 27 | +import threading |
30 | 28 | from dataclasses import dataclass |
| 29 | +from enum import Enum |
| 30 | +from typing import Dict |
31 | 31 |
|
32 | 32 | from .scancodedeps import ScancodeDeps |
33 | 33 | from .scanossbase import ScanossBase |
@@ -63,7 +63,7 @@ class ThreadedDependencies(ScanossBase): |
63 | 63 | inputs: queue.Queue = queue.Queue() |
64 | 64 | output: queue.Queue = queue.Queue() |
65 | 65 |
|
66 | | - def __init__( |
| 66 | + def __init__( # noqa: PLR0913 |
67 | 67 | self, |
68 | 68 | sc_deps: ScancodeDeps, |
69 | 69 | grpc_api: ScanossGrpc, |
@@ -182,31 +182,31 @@ def filter_dependencies_by_scopes( |
182 | 182 | ) |
183 | 183 | return None |
184 | 184 |
|
185 | | - def scan_dependencies( |
| 185 | + def scan_dependencies( # noqa: PLR0912 |
186 | 186 | self, dep_scope: SCOPE = None, dep_scope_include: str = None, dep_scope_exclude: str = None |
187 | 187 | ) -> None: |
188 | 188 | """ |
189 | 189 | Scan for dependencies from the given file/dir or from an input file (from the input queue). |
190 | 190 | """ |
| 191 | + # TODO refactor to simplify branches based on PLR0912 |
191 | 192 | current_thread = threading.get_ident() |
192 | 193 | self.print_trace(f'Starting dependency worker {current_thread}...') |
193 | 194 | try: |
194 | 195 | what_to_scan = self.inputs.get(timeout=5) # Begin processing the dependency request |
195 | 196 | deps = None |
196 | 197 | if what_to_scan.startswith(DEP_FILE_PREFIX): # We have a pre-parsed dependency file, load it |
197 | 198 | deps = self.sc_deps.load_from_file(what_to_scan.strip(DEP_FILE_PREFIX)) |
198 | | - else: # Search the file/folder for dependency files to parse |
199 | | - if not self.sc_deps.run_scan(what_to_scan=what_to_scan): |
200 | | - self._errors = True |
201 | | - else: |
202 | | - deps = self.sc_deps.produce_from_file() |
203 | | - if dep_scope is not None: |
204 | | - self.print_debug(f'Filtering {dep_scope.name} dependencies') |
205 | | - if dep_scope_include is not None: |
206 | | - self.print_debug(f"Including dependencies with '{dep_scope_include.split(',')}' scopes") |
207 | | - if dep_scope_exclude is not None: |
208 | | - self.print_debug(f"Excluding dependencies with '{dep_scope_exclude.split(',')}' scopes") |
209 | | - deps = self.filter_dependencies_by_scopes(deps, dep_scope, dep_scope_include, dep_scope_exclude) |
| 199 | + elif not self.sc_deps.run_scan(what_to_scan=what_to_scan): |
| 200 | + self._errors = True |
| 201 | + else: |
| 202 | + deps = self.sc_deps.produce_from_file() |
| 203 | + if dep_scope is not None: |
| 204 | + self.print_debug(f'Filtering {dep_scope.name} dependencies') |
| 205 | + if dep_scope_include is not None: |
| 206 | + self.print_debug(f"Including dependencies with '{dep_scope_include.split(',')}' scopes") |
| 207 | + if dep_scope_exclude is not None: |
| 208 | + self.print_debug(f"Excluding dependencies with '{dep_scope_exclude.split(',')}' scopes") |
| 209 | + deps = self.filter_dependencies_by_scopes(deps, dep_scope, dep_scope_include, dep_scope_exclude) |
210 | 210 |
|
211 | 211 | if not self._errors: |
212 | 212 | if deps is None: |
|
0 commit comments