WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
277738
Yoav Weiss Documentation Papercuts
https://bugs.webkit.org/show_bug.cgi?id=277738
Summary
Yoav Weiss Documentation Papercuts
fantasai
Reported
2024-08-07 08:19:06 PDT
"Would be great to add something along those lines to the official docs." -- Yoav Just copying out the thread here (from Slack) as inspiration for possible future updates to WebKit documentation... ------- Yoav Weiss: For some reason, almost every time I'm running build-webkit it does a full rebuild, rather than just building the few cpp files I'm changing. Is this a known issue? Something I'm doing wrong? sideshowbarker: Something’s definitely wrong in your local build environment, if it’s running a full rebuild every time. Typical rebuilds after changes should just take a few minutes. Recently there was somebody who reported here about having the same problem. I forget what the cause ended up being, but I’ll look back and see if I can find it. Yoav Weiss: Yeah, that's what I expected.. Thanks!! sideshowbarker: Yeah underneath, it’s all just normal make/makefile stuff that’s smart enough to do the normal thing of only rebuilding what needs to be rebuilt sideshowbarker: Well, I can’t find it now. I guess it must have been more than 60 days ago. I thought it was morerecent than that, but I guess not Daniel Jalkut: There is a debugging environment variable, or user default, that causes Xcode (and xcodebuild) to print out its reason for rebuilding things. Let me see if I can dig it up … I think it’s this … defaults write com.apple.dt.Xcode ExplainWhyBuildCommandsAreRun -bool true Hopefully not out of date. Try setting that and then do your build again. Yoav Weiss: trying.. thanks! Daniel Jalkut: Unfortunately in my quick test it didn’t seem to work with my build-webkit Also some of WebKit’s build process is a little independent of Xcode’s built-in dependency management, I think. Karl Dubost: @Yoav Weiss I usually do a full build for the first compilation after updating the repo. Then for each modification, do a make inside the directory where I’m modifying. for example a make inside WebCore Also I’m not using XCode UI at all for building things. Yoav Weiss: oh, didn't know that a make inside WebCore works! I just use build-webkit :open_mouth: I think that the bit that confused me is that every git-webkit upload also pulls, and hence force a rebuild Karl Dubost: The way I do but that’s my way. And I don’t know if it’s working for me because of privileges. But… here it is… After the pull, and the initial make and assuming the bug exists and its radar counterpart. git checkout -b issueNumber-some-keywords cd Source/WebCore/ # edit edit edit edit make d | filter-build-webkit # edit edit edit git webkit commit --issue issueNumber . # edit edit edit make d | filter-build-webkit # edit git webkit commit --issue issueNumber . # etc. git rebase -i HEAD~numberOfCommits git webkit pr Yoav Weiss: That's great!! Would be great to add something along those lines to the official docs. As someone coming back to webkit after many years, the flow changed enough for it to be a significant source of confusion. So having such an example would be extremely useful Karl Dubost: @fantasai (and me too) wants to improve the docs so any suggestions would be great. Yoav Weiss: Another suggestion would be to make the python version requirements explicit + pointer to some (external?) docs on how to set up virtual env to appease it Another point where I ran into trouble is the fact that I didn't use the bare git commit , so never saw the template it proposed me once I did (I automatically go for git commit -m "foobar"..) fantasai: I feel like we need a bug report titled "Yoav Weiss Papercuts", that just copies out this thread. :grin: -------
Attachments
Add attachment
proposed patch, testcase, etc.
Yoav Weiss
Comment 1
2024-08-07 09:00:34 PDT
An update a few weeks (months?) after the original thread:
> For some reason, almost every time I'm running build-webkit it does a full rebuild, rather than just building the few cpp files I'm changing. Is this a known issue? Something I'm doing wrong?
I'm seeing this whenever I'm trying to grep the output of the build-webkit scripts, in order to try and catch errors that happened further up the logs. I still haven't figured out how to suppress the build output without triggering rebuilds (or why grepping the output does that), but I haven't spent much time on it..
Ahmad Saleem
Comment 2
2024-08-07 09:40:36 PDT
My setup to avoid any rebuilds (without Xcode - means not using it as IDE - still needed for development): 1) Stage Changes on `main` and do `build-webkit --release` 2) Discard Changes or when confirmed then do `git-webkit pr` Continue to use `main` and as long as I don't fetch from upstream - it does not do full rebuild and some time when upstream changes are minor or not touching any `.h` files.
Radar WebKit Bug Importer
Comment 3
2024-08-14 08:20:16 PDT
<
rdar://problem/133843184
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug