Return a callable that builds a full DLC debug report. ``libraries`` and ``executables`` are normalized to tuples so the returned provider can be called repeatedly even if the caller passed a generator or another one-shot iterable.
(
*,
recorder: InMemoryDebugRecorder | None,
libraries: Iterable[LibrarySpec | str] | None = None,
executables: Iterable[ExecutableSpec | str] | None = None,
include_module_paths: bool = False,
include_executable_paths: bool = True,
log_limit: int = 300,
)
| 53 | |
| 54 | |
| 55 | def make_issue_report_provider( |
| 56 | *, |
| 57 | recorder: InMemoryDebugRecorder | None, |
| 58 | libraries: Iterable[LibrarySpec | str] | None = None, |
| 59 | executables: Iterable[ExecutableSpec | str] | None = None, |
| 60 | include_module_paths: bool = False, |
| 61 | include_executable_paths: bool = True, |
| 62 | log_limit: int = 300, |
| 63 | ) -> Callable[[], str]: |
| 64 | """Return a callable that builds a full DLC debug report. |
| 65 | |
| 66 | ``libraries`` and ``executables`` are normalized to tuples so the returned |
| 67 | provider can be called repeatedly even if the caller passed a generator or |
| 68 | another one-shot iterable. |
| 69 | """ |
| 70 | libraries_snapshot = None if libraries is None else tuple(libraries) |
| 71 | executables_snapshot = None if executables is None else tuple(executables) |
| 72 | |
| 73 | def _provider() -> str: |
| 74 | return build_debug_report( |
| 75 | recorder=recorder, |
| 76 | libraries=libraries_snapshot, |
| 77 | executables=executables_snapshot, |
| 78 | include_module_paths=include_module_paths, |
| 79 | include_executable_paths=include_executable_paths, |
| 80 | log_limit=log_limit, |
| 81 | ) |
| 82 | |
| 83 | return _provider |
| 84 | |
| 85 | |
| 86 | class DebugTextDialog(QDialog): |
no outgoing calls
no test coverage detected