New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support none defaultSettings #395
Conversation
Codecov Report
@@ Coverage Diff @@
## master #395 +/- ##
==========================================
+ Coverage 92.19% 92.22% +0.03%
==========================================
Files 291 291
Lines 14615 14673 +58
==========================================
+ Hits 13474 13532 +58
Misses 1141 1141
Continue to review full report at Codecov.
|
@marciniwanicki / @kwridan I have the feeling there's already a way to achieve this but I couldn't find anything. |
Generated by π« Danger |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yikes, looks like we're missing exposing .none
in the ProjectDescription
]}/> | ||
|
||
<Message info title="Essential Settings" description="The `.essential` option can be used in the event all warnings are defined in an `xcconfig` file to prevent Tuist from overriding them at the project or target level."/> | ||
<Message info title="Essential Settings" description="The .essential option can be used in the event all warnings are defined in an `xcconfig` file to prevent Tuist from overriding them at the project or target level."/> | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Worth adding a warning style comment for the .none
case highlighting Tusit is delegating the responsibility of settings to the user and the project may fail to compile! :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How does this look?
Projects may fail to compile if some essential settings are missing. Use
.none
only if you are specifying all the necessary build settings manually or via xcconfig files.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Something like this @kwridan ?
Pushed an update to expose There are still some settings that get generated by Tuist - all the ones within https://github.com/tuist/tuist/blob/master/Sources/TuistGenerator/Generator/ConfigGenerator.swift#L156 - those are essential to Tuist's functionality (e.g. ensuring Test hosts are setup etc...) - perhaps to allow user control over some of those, we can change the order of precedence
|
Isn't that the current order? I think it makes sense to keep Tuist's derived settings because we infer those from the manifest. We could allow the user to control them but if things don't work, they'll blame Tuist for that. |
8fa9b42
to
798d534
Compare
Short description π
Pairing with @RomainBoulay on porting a project to Swift, we figured out that there's no way to disable the generation of build settings by Tuist.
Solution π¦
I'm adding a new
DefaultSettings
case,.none
, to disable the default build settings generation.Implementation π©βπ»π¨βπ»
DefaultSettings.none
.