Avoid default target build scheme when using custom build schemes

Hello, I specified 4 custom build schemes on the project level, in workspace file I pass empty array for schemes. After project generation I have one additionaly generated build scheme with the name of the target which I haven’t specified. I can’t find a way to get rid of that scheme. Could you guys help with that. BTW Thanks for the great tool, it’s pleasure to use it! Attached below workspace and project file along with the screenshot.
Workspace file:

let workspace = Workspace(
    name: projectName,
    projects: [
        Path(projectName)
    ],
    schemes: []
)

Project file:

let project = Project(
    name: projectName,
    settings: Settings(configurations: BuildConfigurationsProvider.getTuistBuildConfigurations()),
    targets: [...],
    schemes: BuildSchemesProvider.getSchemes(),
    additionalFiles: FileProvider.getAdditionalFiles()
)

Hi @m3rk!

Right now tuist autogenerates a default scheme for every target - and currently it is not possible to opt-out of this behavior. But :point_up: it will soon be! There is a PR that will enable to disable autogenerated schemes in the works. You can follow it here. With it you will be able to add disableAutogeneratedSchemes to Config.swift and you will only see schemes that you have defined.

I hope this resolves your question :slightly_smiling_face:

1 Like

@marekfort Thanks for the quick answer! This is great news, look forward to that new feature :slightly_smiling_face:

1 Like

It has been merged now, and it seems like a new patch release is coming up very soon :tada:

2 Likes

Right, it’s been published in the version 1.5.3, although we are investigating an issue that is causing that version of Tuist not to work with Xcode 11.3.1.