Frequently-Asked Questions (FAQ) ================================ How do I update my changes? --------------------------- Often it is necessary to update your patch set before it is merged. Refer to the `Gerrit Upload Patch Set documentation`_ on how to do so. If you need to modify an existing patch set with multiple commits, refer to the `Gerrit Replace Changes documentation`_. How long will my changes take to merge into ``integration``? ------------------------------------------------------------ This can vary a lot, depending on: * How important the patch set is considered by the TF maintainers. Where possible, you should indicate the required timescales for merging the patch set and the impact of any delay. Feel free to add a comment to your patch set to get an estimate of when it will be merged. * The quality of the patch set. Patches are likely to be merged more quickly if they follow the coding guidelines, have already had some code review, and have been appropriately tested. * The impact of the patch set. For example, a patch that changes a key generic API is likely to receive much greater scrutiny than a local change to a specific platform port. * How much opportunity for external review is required. For example, the TF maintainers may not wait for external review comments to merge trivial bug-fixes but may wait up to a week to merge major changes, or ones requiring feedback from specific parties. * How many other patch sets are waiting to be integrated and the risk of conflict between the topics. * If there is a code freeze in place in preparation for the release. Please refer the :ref:`Release Processes` document for more details. * The workload of the TF maintainers. How long will it take for my changes to go from ``integration`` to ``master``? ------------------------------------------------------------------------------ This depends on how many concurrent patches are being processed at the same time. In simple cases where all potential regressions have already been tested, the delay will be less than 1 day. If the TF maintainers are trying to merge several things over the course of a few days, it might take up to a week. Typically, it will be 1-2 days. The worst case is if the TF maintainers are trying to make a release while also receiving patches that will not be merged into the release. In this case, the patches will be merged onto ``integration``, which will temporarily diverge from the release branch. The ``integration`` branch will be rebased onto ``master`` after the release, and then ``master`` will be fast-forwarded to ``integration`` 1-2 days later. This whole process could take up 4 weeks. Please refer to the :ref:`Release Processes` document for code freeze dates. The TF maintainers will inform the patch owner if this is going to happen. It is OK to create a patch based on commits that are only available in ``integration`` or another patch set, rather than ``master``. There is a risk that the dependency commits will change (for example due to patch set rework or integration problems). If this happens, the dependent patch will need reworking. What are these strange comments in my changes? ---------------------------------------------- All the comments from ``TrustedFirmware Code Review`` user (email: ``ci@trustedfirmware.org``) are associated with Continuous Integration (CI) infrastructure. The links published on the comments redirect to the CI web interface at http://ci.trustedfirmware.org, where details of the tests failures, if any, can be examined. -------------- *Copyright (c) 2019-2020, Arm Limited. All rights reserved.* .. _Gerrit Upload Patch Set documentation: https://review.trustedfirmware.org/Documentation/intro-user.html#upload-patch-set .. _Gerrit Replace Changes documentation: https://review.trustedfirmware.org/Documentation/user-upload.html#push_replace