Skip to content
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

[DONOTMERGE] [repo_update] Attempt at making the script re-entrant without syncing inbetween #128

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Commits on Jun 5, 2020

  1. Attempt to not pick commits that have been picked previously

    repo_update is currently not reentrant: If a commit is picked once it
    cannot be picked a second time as that either results in no changes or a
    bunch of merge conflicts.
    
    Generate stable hashes with patch-id that are invariant to line number
    changes, white space and file ordering, and use those to compare with
    existing patches on top of the selected manifest tag. Skip the pick on
    matching hashes.
    
    Note that this intentionally does not check if the patch is found
    anywhere else in the tree: It might have been picked and reverted
    multiple times in AOSP. Furthermore, if the patch eventually ends up on
    a tag we want to be alerted too and remove it.
    This obviously implies that we should not be applying and reverting our
    own patches either.
    
    Signed-off-by: Marijn Suijten <[email protected]>
    MarijnS95 committed Jun 5, 2020
    Configuration menu
    Copy the full SHA
    98bf53c View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2020

  1. Attempt to not revert patches that have been reverted previously

    This variant operates on reverts instead of cherry picks. See the
    previous commit for an overview of the method and design choices.
    
    Reverts are compared by creating a patch that is the revert of the
    desired commit, of which the stable patch-id hash is used to compare
    against the commit range. Notable is the mnemonic prefix (a/ and b/)
    which are swapped in that revert as well, resulting in mismatched
    hashes. This is addressed by showing the patch instead with
    diff.noprefix=true.
    
    Signed-off-by: Marijn Suijten <[email protected]>
    MarijnS95 committed Aug 8, 2020
    Configuration menu
    Copy the full SHA
    c178eeb View commit details
    Browse the repository at this point in the history