blob: 6aa04f0a8a89191a23be5aa38c8158b3eca46cd1 [file] [log] [blame]
Paul Beesley236d2462019-03-05 17:19:37 +00001Frequently-Asked Questions (FAQ)
2================================
3
Louis Mayencourt72ef3d42019-03-22 11:47:22 +00004How do I update my changes?
5---------------------------
Joel Hutton9e605632019-02-25 15:18:56 +00006
Louis Mayencourt72ef3d42019-03-22 11:47:22 +00007Often it is necessary to update your patch set before it is merged. Refer to the
8`Gerrit Upload Patch Set documentation`_ on how to do so.
Joel Hutton9e605632019-02-25 15:18:56 +00009
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000010If you need to modify an existing patch set with multiple commits, refer to the
11`Gerrit Replace Changes documentation`_.
Joel Hutton9e605632019-02-25 15:18:56 +000012
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000013How long will my changes take to merge into ``integration``?
14------------------------------------------------------------
Joel Hutton9e605632019-02-25 15:18:56 +000015
16This can vary a lot, depending on:
17
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000018* How important the patch set is considered by the TF maintainers. Where
19 possible, you should indicate the required timescales for merging the patch
20 set and the impact of any delay. Feel free to add a comment to your patch set
21 to get an estimate of when it will be merged.
Joel Hutton9e605632019-02-25 15:18:56 +000022
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000023* The quality of the patch set. Patches are likely to be merged more quickly if
24 they follow the coding guidelines, have already had some code review, and have
25 been appropriately tested.
Joel Hutton9e605632019-02-25 15:18:56 +000026
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000027* The impact of the patch set. For example, a patch that changes a key generic
28 API is likely to receive much greater scrutiny than a local change to a
29 specific platform port.
Joel Hutton9e605632019-02-25 15:18:56 +000030
31* How much opportunity for external review is required. For example, the TF
32 maintainers may not wait for external review comments to merge trivial
33 bug-fixes but may wait up to a week to merge major changes, or ones requiring
34 feedback from specific parties.
35
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000036* How many other patch sets are waiting to be integrated and the risk of
37 conflict between the topics.
Joel Hutton9e605632019-02-25 15:18:56 +000038
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000039* If there is a code freeze in place in preparation for the release. Please
40 refer the `release information`_ for more details.
Joel Hutton9e605632019-02-25 15:18:56 +000041
42* The workload of the TF maintainers.
43
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000044How long will it take for my changes to go from ``integration`` to ``master``?
45------------------------------------------------------------------------------
Joel Hutton9e605632019-02-25 15:18:56 +000046
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000047This depends on how many concurrent patches are being processed at the same
48time. In simple cases where all potential regressions have already been tested,
49the delay will be less than 1 day. If the TF maintainers are trying to merge
50several things over the course of a few days, it might take up to a week.
Joel Hutton9e605632019-02-25 15:18:56 +000051Typically, it will be 1-2 days.
52
53The worst case is if the TF maintainers are trying to make a release while also
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000054receiving patches that will not be merged into the release. In this case, the
55patches will be merged onto ``integration``, which will temporarily diverge from
56the release branch. The ``integration`` branch will be rebased onto ``master``
57after the release, and then ``master`` will be fast-forwarded to ``integration``
581-2 days later. This whole process could take up 4 weeks. Please refer the
59`release information`_ for code freeze dates. The TF maintainers will inform the
60patch owner if this is going to happen.
Joel Hutton9e605632019-02-25 15:18:56 +000061
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000062It is OK to create a patch based on commits that are only available in
63``integration`` or another patch set, rather than ``master``. There is a risk
64that the dependency commits will change (for example due to patch set rework or
65integration problems). If this happens, the dependent patch will need reworking.
Joel Hutton9e605632019-02-25 15:18:56 +000066
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000067What are these strange comments in my changes?
68----------------------------------------------
Joel Hutton9e605632019-02-25 15:18:56 +000069
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000070All the comments from ``ci-bot-user`` are associated with Continuous Integration
71infrastructure. The links published on the comment are not currently accessible,
72but would be after the CI has been transitioned to `trustedfirmware.org`_.
73Please refer to https://github.com/ARM-software/tf-issues/issues/681 for more
74details on the timelines.
Joel Hutton9e605632019-02-25 15:18:56 +000075
Joel Hutton0f79fb12019-02-26 16:23:54 +000076.. _release information: release-information.rst
Louis Mayencourt72ef3d42019-03-22 11:47:22 +000077.. _Gerrit Upload Patch Set documentation: https://review.trustedfirmware.org/Documentation/intro-user.html#upload-patch-set
78.. _Gerrit Replace Changes documentation: https://review.trustedfirmware.org/Documentation/user-upload.html#push_replace
79.. _trustedfirmware.org: https://www.trustedfirmware.org/