Media/WebRTC/libwebrtc Update Process: Difference between revisions

convert numbers to bullets and futher clarify the hygiene note
(clarify the commit hygiene section to remove the ordering specific info and specifically call out which types of changes belong in the different commit notations)
(convert numbers to bullets and futher clarify the hygiene note)
Line 47: Line 47:
Three main types of errors will cause <code>loop-ff.sh</code> to exit: the first is a git rebase conflict, the second is a failure to regenerate build files (due to BUILD.gn changes), and the third is a build error due to API changes in upstream code.
Three main types of errors will cause <code>loop-ff.sh</code> to exit: the first is a git rebase conflict, the second is a failure to regenerate build files (due to BUILD.gn changes), and the third is a build error due to API changes in upstream code.


1. When fixing rebase errors or making other changes to fix build issues in moz-libwebrtc (any changes under third_party/libwebrtc), mercurial commit messages follow the pattern:
* When fixing rebase errors or making other changes to fix build issues in moz-libwebrtc (any changes under third_party/libwebrtc), mercurial commit messages follow the pattern:
  Bug {current-fast-forward-bug-number} - (fix-{upstream-sha}) {description}
  Bug {current-fast-forward-bug-number} - (fix-{upstream-sha}) {description}
   
   
Line 57: Line 57:
   --repo-path $MOZ_LIBWEBRTC_SRC \
   --repo-path $MOZ_LIBWEBRTC_SRC \
   --target-branch-head $MOZ_TARGET_UPSTREAM_BRANCH_HEAD )
   --target-branch-head $MOZ_TARGET_UPSTREAM_BRANCH_HEAD )
2. If instructed to run <code>commit-build-file-changes.sh</code>, its auto-generated mercurial commit messages follow the pattern:
* If instructed to run <code>commit-build-file-changes.sh</code>, its auto-generated mercurial commit messages follow the pattern:
  Bug {current-fast-forward-bug-number} - (fix-{upstream-sha}) {description} - moz.build file updates
  Bug {current-fast-forward-bug-number} - (fix-{upstream-sha}) {description} - moz.build file updates
3. When making changes to fix Mozilla code (code outside of third_party/libwebrtc) in response to changes upstream, mercurial commit messages follow the pattern:
* When making changes to fix Mozilla code (code outside of third_party/libwebrtc) in response to changes upstream, mercurial commit messages follow the pattern:
  Bug {current-fast-forward-bug-number} (MOZ) - {description}
  Bug {current-fast-forward-bug-number} (MOZ) - {description}


If multiple kinds of changes are needed, commit hygiene is a must: (MOZ) patches contain changes to files outside of third_party/libwebrtc, (fix-xxx) commits contain changes to third_party/libwebrtc files, and finally "(fix-xxx) ... - moz.build file updates" contain only third_party/libwebrtc moz.build changes.
If multiple kinds of changes are needed to fix build errors, commit hygiene is a must: (MOZ) patches contain changes to files outside of third_party/libwebrtc, (fix-xxx) commits contain changes to third_party/libwebrtc files, and finally "(fix-xxx) ... - moz.build file updates" contain only third_party/libwebrtc moz.build changes.


=== Operational notes ===
=== Operational notes ===
119

edits