• 
      

    Split filediff creation into preparation and finalization methods

    Review Request #10232 — Created Oct. 15, 2018 and discarded

    Information

    Review Board
    release-4.0.x

    Reviewers

    filediff_creator.create_filediffs is now split into:

    • filediff_creator.prepare_filediffs, which does the work that
      create_filediffs used to do up to actual creation (with
      FileDiff.objects.bulk_create().
    • filediff_creator.finalize_fildiffs, which takes the result of
      prepare_filediffs and does the actual creation.

    In the new DVCS web API workflow, we will need to validate that the
    created FileDiffs from the cumulative diff match (a) the validation info
    passed and (b) the set of terminal FileDiffs. If they do, we will
    proceed with creation. This allows us to finalize in a single API call
    instead of two (as before we would have to call create_filediffs()
    with validate_only=True to validate and then again with
    validate_only=False only when validation has succeeded. Since this
    requires us to parse the entire diff file again, we would not
    necessarily want to do it in the same API request.

    Ran unit tests.

    Description From Last Updated

    E128 continuation line under-indented for visual indent

    reviewbotreviewbot
    Checks run (1 failed, 1 succeeded)
    flake8 failed.
    JSHint passed.

    flake8

    brennie
    Review request changed
    Status:
    Discarded