async def generate_mock_generated_target( request: MockGenerateTargetsRequest) -> GeneratedTargets: paths = await Get(SourcesPaths, SourcesPathsRequest(request.generator[Sources])) # Generate using both "file address" and "generated target" syntax. return GeneratedTargets( request.generator, [ *generate_file_level_targets( MockGeneratedTarget, request.generator, paths.files, None, add_dependencies_on_all_siblings=True, use_generated_address_syntax=False, ).values(), *generate_file_level_targets( MockGeneratedTarget, request.generator, paths.files, None, add_dependencies_on_all_siblings=True, use_generated_address_syntax=True, ).values(), ], )
async def generate_targets_from_python_tests( request: GenerateTargetsFromPythonTests, files_not_found_behavior: FilesNotFoundBehavior, python_infer: PythonInferSubsystem, union_membership: UnionMembership, ) -> GeneratedTargets: sources_paths = await Get( SourcesPaths, SourcesPathsRequest(request.generator[PythonTestsGeneratingSourcesField]) ) all_overrides = {} overrides_field = request.generator[OverridesField] if overrides_field.value: _all_override_paths = await MultiGet( Get(Paths, PathGlobs, path_globs) for path_globs in overrides_field.to_path_globs(files_not_found_behavior) ) all_overrides = overrides_field.flatten_paths( dict(zip(_all_override_paths, overrides_field.value.values())) ) return generate_file_level_targets( PythonTestTarget, request.generator, sources_paths.files, union_membership, add_dependencies_on_all_siblings=not python_infer.imports, overrides=all_overrides, )
async def generate_targets_from_shell_sources( request: GenerateTargetsFromShellSources, files_not_found_behavior: FilesNotFoundBehavior, shell_setup: ShellSetup, union_membership: UnionMembership, ) -> GeneratedTargets: sources_paths = await Get( SourcesPaths, SourcesPathsRequest(request.generator[ShellSourcesGeneratingSourcesField]) ) all_overrides = {} overrides_field = request.generator[OverridesField] if overrides_field.value: _all_override_paths = await MultiGet( Get(Paths, PathGlobs, path_globs) for path_globs in overrides_field.to_path_globs(files_not_found_behavior) ) all_overrides = overrides_field.flatten_paths( dict(zip(_all_override_paths, overrides_field.value.values())) ) return generate_file_level_targets( ShellSourceTarget, request.generator, sources_paths.files, union_membership, add_dependencies_on_all_siblings=not shell_setup.dependency_inference, overrides=all_overrides, )
async def generate_targets_from_files( request: GenerateTargetsFromFiles, union_membership: UnionMembership) -> GeneratedTargets: paths = await Get(SourcesPaths, SourcesPathsRequest(request.generator[FilesSources])) return generate_file_level_targets( Files, request.generator, paths.files, union_membership, add_dependencies_on_all_siblings=False, )
async def generate_targets_from_junit_tests( request: GenerateTargetsFromJunitTests, union_membership: UnionMembership) -> GeneratedTargets: paths = await Get( SourcesPaths, SourcesPathsRequest(request.generator[JavaTestsGeneratorSourcesField])) return generate_file_level_targets( JunitTestTarget, request.generator, paths.files, union_membership, add_dependencies_on_all_siblings=False, )
async def generate_targets_from_protobuf_library( request: GenerateTargetsFromProtobufLibrary, protoc: Protoc, union_membership: UnionMembership, ) -> GeneratedTargets: paths = await Get(SourcesPaths, SourcesPathsRequest(request.generator[ProtobufSources])) return generate_file_level_targets( ProtobufLibrary, request.generator, paths.files, union_membership, add_dependencies_on_all_siblings=not protoc.dependency_inference, )
async def generate_targets_from_python_library( request: GenerateTargetsFromPythonLibrary, python_infer: PythonInferSubsystem, union_membership: UnionMembership, ) -> GeneratedTargets: paths = await Get( SourcesPaths, SourcesPathsRequest(request.generator[PythonLibrarySources])) return generate_file_level_targets( PythonLibrary, request.generator, paths.files, union_membership, add_dependencies_on_all_siblings=not python_infer.imports, )
async def generate_targets_from_scala_sources( request: GenerateTargetsFromScalaSources, union_membership: UnionMembership) -> GeneratedTargets: paths = await Get( SourcesPaths, SourcesPathsRequest( request.generator[ScalaSourcesGeneratorSourcesField])) return generate_file_level_targets( ScalaSourceTarget, request.generator, paths.files, union_membership, add_dependencies_on_all_siblings=True, use_source_field=True, )
async def generate_targets_from_shell_sources( request: GenerateTargetsFromShellSources, shell_setup: ShellSetup, union_membership: UnionMembership, ) -> GeneratedTargets: paths = await Get( SourcesPaths, SourcesPathsRequest( request.generator[ShellSourcesGeneratingSourcesField])) return generate_file_level_targets( ShellSourceTarget, request.generator, paths.files, union_membership, add_dependencies_on_all_siblings=not shell_setup.dependency_inference, )