-
Notifications
You must be signed in to change notification settings - Fork 4.2k
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
Revert string centralization #38321
Merged
ZhilkinSerg
merged 28 commits into
CleverRaven:master
from
kevingranade:revert-string-centralization
Feb 25, 2020
Merged
Revert string centralization #38321
ZhilkinSerg
merged 28 commits into
CleverRaven:master
from
kevingranade:revert-string-centralization
Feb 25, 2020
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This reverts commit 4987742.
This reverts commit d9c6079.
This reverts commit b1b48ba.
This reverts commit 4fffd96.
This reverts commit 05940bf.
This reverts commit 19c5698.
This reverts commit 55cabb7.
This reverts commit 571efb2.
This reverts commit 07995cd.
This reverts commit 50059c8.
This reverts commit 0a6bf67.
This reverts commit b5f18f3.
kevingranade
added
Code: Build
Issues regarding different builds and build environments
[C++]
Changes (can be) made in C++. Previously named `Code`
labels
Feb 25, 2020
Side note, I've manually reviewed the whole PR and there's nothing here but swapping things back to literal strings and related changes. I HAD pulled in some extraneous stuff but that's all cleaned up now. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
[C++]
Changes (can be) made in C++. Previously named `Code`
Code: Build
Issues regarding different builds and build environments
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
SUMMARY: None
Purpose of change
Build times have been growing recently, upon investigation the recent move to centralize strings in src/cata_string_consts.h has been determined to be the culprit.
Describe the solution
Reverts the string centralization commits back to ones where conflicts start piling up.
Describe alternatives you've considered
We could revert either more (with more work) or fewer commits (generating work for later).
This is the series of reverts that apply cleanly without breaking the build, reverting commits beyond these works but build errors start creeping in.
We could also revert these piecemeal, possibly with as few as one original commit per revert PR. I'm not sure where the right tradeoff there is, because while smaller PRs are obviously better, delaying the reverts and spreading them out over time raise more chances of conflicts.
Testing
Everything builds and tests cleanly.
Game launches normally with no error and basic interactivity is present.
Build times are greatly improved.
Additional context
These are the results of timing tests I've run on an EC2 c4.2xlarge host I usually build on.
585fbbe (was master HEAD at the time)
real 9m20.844s
user 68m22.061s
sys 2m48.345s
d1b2f33 (was master HEAD at the time, effectively a retest to check jitter)
real 9m20.233s
user 68m0.841s
sys 2m46.542s
After reverting commits up to most recent merge
real 8m47.588s
user 63m45.326s
sys 2m43.966s
Rebuild of revert up to most recent merge.
real 8m47.384s
user 63m37.103s
sys 2m44.131s
Before creation of file (checked out the tree before the first PR in the series)
real 7m36.129s
user 54m24.264s
sys 2m30.595s
After reverts in current PR
real 8m6.127s
user 58m31.233s
sys 2m28.755s
Rebuild
real 8m6.016s
user 58m30.913s
sys 2m29.635s