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

Function create_concurrent_run_args

ci/ci-compile-concurrent-backup.py:316–382  ·  view source on GitHub ↗
(args: argparse.Namespace)

Source from the content-addressed store, hash-verified

314
315
316def create_concurrent_run_args(args: argparse.Namespace) -> ConcurrentRunArgs:
317 skip_init = args.skip_init
318 if args.interactive:
319 boards = choose_board_interactively(DEFAULT_BOARDS_NAMES + OTHER_BOARDS_NAMES)
320 else:
321 boards = args.boards.split(",") if args.boards else DEFAULT_BOARDS_NAMES
322 projects: list[Board] = []
323 for board in boards:
324 projects.append(create_board(board, no_project_options=args.no_project_options))
325 extra_examples: dict[Board, list[Path]] = {}
326 # Handle both positional and named examples
327 if args.positional_examples:
328 # Convert positional examples, handling both "examples/Blink" and "Blink" formats
329 examples = []
330 for example in args.positional_examples:
331 # Remove "examples/" prefix if present
332 if example.startswith("examples/"):
333 example = example[len("examples/") :]
334 examples.append(example)
335 elif args.examples:
336 examples = args.examples.split(",")
337 else:
338 examples = DEFAULT_EXAMPLES
339 # Only add extra examples when using defaults
340 for b, _examples in EXTRA_EXAMPLES.items():
341 resolved_examples = [resolve_example_path(example) for example in _examples]
342 extra_examples[b] = resolved_examples
343 examples_paths = [resolve_example_path(example) for example in examples]
344 # now process example exclusions.
345 if args.exclude_examples:
346 exclude_examples = args.exclude_examples.split(",")
347 examples_paths = [
348 example
349 for example in examples_paths
350 if example.name not in exclude_examples
351 ]
352 for exclude in exclude_examples:
353 examples.remove(exclude)
354 customsdk = args.customsdk
355 defines: list[str] = []
356 if args.defines:
357 defines.extend(args.defines.split(","))
358 extra_packages: list[str] = []
359 if args.extra_packages:
360 extra_packages.extend(args.extra_packages.split(","))
361 build_dir = args.build_dir
362 extra_scripts = "pre:lib/ci/util-flags.py"
363 verbose = args.verbose
364
365 out: ConcurrentRunArgs = ConcurrentRunArgs(
366 projects=projects,
367 examples=examples_paths,
368 skip_init=skip_init,
369 defines=defines,
370 customsdk=customsdk,
371 extra_packages=extra_packages,
372 libs=LIBS,
373 build_dir=build_dir,

Callers 1

mainFunction · 0.85

Calls 7

create_boardFunction · 0.90
ConcurrentRunArgsClass · 0.90
itemsMethod · 0.80
resolve_example_pathFunction · 0.70
appendMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected