MCPcopy Create free account
hub / github.com/FastLED/FastLED / _run_sequential

Method _run_sequential

ci/util/running_process_group.py:629–683  ·  view source on GitHub ↗

Execute processes in sequence.

(self)

Source from the content-addressed store, hash-verified

627 return any_activity
628
629 def _run_sequential(self) -> list[ProcessTiming]:
630 """Execute processes in sequence."""
631 completed_timings: list[ProcessTiming] = []
632
633 # Enable status monitoring
634 self._status_monitoring_active = True
635 try:
636 for process in self.processes:
637 print(f"Running: {process.get_command_str()}", flush=True)
638
639 # Track process start time
640 self._track_process_start(process)
641
642 # Start the process if not already running
643 if process.proc is None:
644 process.start()
645
646 try:
647 exit_code = cast(int, process.wait())
648
649 # Collect timing data
650 if process.duration is not None:
651 timing = ProcessTiming(
652 name=_get_friendly_test_name(process.command),
653 duration=process.duration,
654 command=str(process.command),
655 )
656 completed_timings.append(timing)
657
658 # Check for failure
659 if exit_code != 0:
660 error_snippet = extract_error_snippet(
661 _get_output_lines(process)
662 )
663 failure = TestFailureInfo(
664 test_name=_extract_test_name(process.command),
665 command=str(process.command),
666 return_code=exit_code,
667 output=error_snippet,
668 error_type="exit_failure",
669 )
670 raise TestExecutionFailedException(
671 f"Process failed with exit code {exit_code}", [failure]
672 )
673
674 except KeyboardInterrupt as ki:
675 handle_keyboard_interrupt(ki)
676 raise
677 except Exception as e:
678 print(f"Process failed: {process.get_command_str()} - {e}")
679 raise
680 finally:
681 self._status_monitoring_active = False
682
683 return completed_timings
684
685 def _run_with_dependencies(self) -> list[ProcessTiming]:
686 """Execute processes respecting dependency order."""

Callers 1

runMethod · 0.95

Calls 13

_track_process_startMethod · 0.95
ProcessTimingClass · 0.90
_get_friendly_test_nameFunction · 0.90
extract_error_snippetFunction · 0.90
TestFailureInfoClass · 0.90
_extract_test_nameFunction · 0.90
_get_output_linesFunction · 0.85
printFunction · 0.50
startMethod · 0.45
waitMethod · 0.45

Tested by

no test coverage detected