I think this makes a lot of sense and we should adopt this into the style 
guidelines. 

Two additional steps I am curious if we can take are:

1. Moving all, including source currently in WTF and PAL to Sources/ThirdParty. 

Having a single place seems more straightforward than multiple. Are there 
technical reasons this can’t be done? Are there non-technical reasons it 
shouldn’t be done?

2. Moving to an out-of-tree model for third party code. 

Ideally, we wouldn’t need to have copies of the third party code in the WebKit 
repository at all, and instead embed a dependency that can be resolved before 
building (downloading the appropriate remote repository versions, applying any 
additional changes, etc.)

This would obviously be a bigger lift, but has potentially nice properties like 
being able to use pre-built binaries for infrequently changing third party code 
where available. 

Are there technical / non-technical reasons (other than the obvious effort it 
would require) why this would be a problem?

- Sam

> On Sep 25, 2024, at 11:41 AM, Michael Catanzaro via webkit-dev 
> <webkit-dev@lists.webkit.org> wrote:
> 
> Hi developers,
> 
> I request that bundled or "vendored" sources copied from other upstream 
> projects should live under a directory named "ThirdParty" so we can keep 
> track of it. Not knowing about bundled sources causes various problems, e.g. 
> we've previously shipped unused libavif and dav1d sources in WebCore due to 
> not knowing about them.
> 
> Ideally third-party code should be placed in Source/ThirdParty. If the 
> requirements of Apple's internal build system do not allow for putting the 
> code in Source/ThirdParty, then you can create a new ThirdParty directory 
> wherever needed, e.g. Source/WebCore/PAL/ThirdParty.
> 
> Currently we have at least wtf/simde and wtf/simdutf violating these 
> guidelines. If somebody with XCode could please create a wtf/ThirdParty and 
> move the directories to there, that would be helpful. Unfortunately it's not 
> easy to move sources without XCode. If you know of other bundled sources 
> elsewhere in WebKit, let's do the similar moves for those as well.
> 
> (This rule doesn't need to apply for minimal one-time copying, like taking 
> just a useful file or two from an upstream project and incorporating it into 
> WebKit. Of course that is fine. We just shouldn't have entire upstream 
> projects hidden in WebKit.)
> 
> Thanks,
> 
> Michael
> 
> 
> _______________________________________________
> webkit-dev mailing list
> webkit-dev@lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to