Soft Works: > Hi, > > I have a question about structuring my patchset . > > IIUC, commits inside a patchset must be separated by library. Now, Andreas > mentioned that every single commit in a patchset needs to pass > FATE/compilation. > > What if both cannot be achieved at the same time, like when commit1 for libA > breaks libB which can only be addressed in a separate subsequent commit2 for > libB? > When the ABI is closed (as usual), then commit1 must not be committed; not even together with commit2, because users are allowed to use an old version of libB together with a new version of libA. (In such cases we typically add a new function if an old one is not sufficient anymore and leave the old function in place up until the next major bump if it is not public.)
When the ABI is open (as now, but not indefinitely; we will probably make a new release in a month or so), you can just make the changes to both libraries at the same time. Notice that this does not allow changes to the public API; it is only the ABI side of things. - Andreas PS: Atomic commits are often automatically intra-library. But if a commit logically touches several libraries but not in any way that version conflicts between libraries might arise, then splitting along library lines makes no sense. E.g. look at 2934a4b9a5ee4825480180421e4679c02e6cbbe5 for an example. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".