-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[RFC][build-script] SR-237: Merge build-script-impl into build-script #2190
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
Conversation
@gribozavr @modocache |
b6b9f37
to
d64f972
Compare
I've been thinking about this for a few days, but am torn:
I defer to @gribozavr and other maintainers on whether we should make one huge change, or whether we should migrate little by little. If I absolutely had to take a side, I personally feel moving little by little, although frustrating, is a more reviewable/feasible approach. |
@modocache We really want a change like this to be incremental. This is how I would do this:
The reason I believe we need 1,2 is that I think there are fundamental capabilities missing from build-script that is making people want to use build-script-impl (of course there is also the cultural aspect). But I am not 100% sure about my statement, that is why we really need to understand what are the changes that are going into build-script-impl before we continue. |
@rintaro First of all, I want to thank you for taking on this colossal project.
I very much agree with @modocache. It is hard to review such a big change. It is not big just in terms of code lines, but also in terms of build logic. Swift builds in many diverse environments, and no single person has access to all of them. It will be much easier to find issues if we took in smaller changes and checked at each point that we haven't broken any of our usecases. |
@modocache @rintaro After rereading my post, I realized I want to be a little clearer: Before we can work on the cultural aspects, we need to ensure that build-script has enough "coverage" of build-script-impl's functionality so that when we push back the tech is there and we can "teach" people how to make these changes. |
We do provide one way to migrate individual |
@modocache @gribozavr @gottesmm Can I close this PR? |
@rintaro Yes, feel free to close this. As for the end result of the pull request: I love it! I especially appreciate the |
d64f972
to
e8c7eda
Compare
@modocache Thanks! closing. |
Resolved bug number: (SR-237)
Complete rewrite in Python.
Some - bad English - design memo are available here: https://gist.github.com/rintaro/ff6b5a063850a0efe535ede03585b592
Not well tested for now, so please try it and tell me if you found any problems.
Currently, for easy to compare with original
utils/build-script
,all codes are in
utils-experimental/
directory.With new
--dry-run
,-n
mode, you can safely preview what commands to be executed.No change in command line interface, including
--preset
mode.Compatible with current
build-presets.ini
.Before merging this pull request to apple/swift repository:
utils/
after some basic design acceptance.