[Webkit-unassigned] [Bug 147961] Refactor BuildbotQueueView._presentPopoverForPendingCommits to work more generically with repositories other than "openSource" and "internal".

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Aug 14 18:03:36 PDT 2015


https://bugs.webkit.org/show_bug.cgi?id=147961

Daniel Bates <dbates at webkit.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #259046|review?, commit-queue?      |review-, commit-queue-
              Flags|                            |

--- Comment #11 from Daniel Bates <dbates at webkit.org> ---
Comment on attachment 259046
  --> https://bugs.webkit.org/attachment.cgi?id=259046
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=259046&action=review

> Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:177
> +        var shouldAddDivider = false;
> +        var sortedRepositories = Dashboard.sortedRepositories;
> +        for (var i = 0; i < sortedRepositories.length; i++) {
> +            var repository = sortedRepositories[i];
> +            var trac = repository.trac;
> +            var repositoryName = repository.name;
> +            var latestProductiveRevisionNumber = latestProductiveIteration.revision[repositoryName];
> +            var lines = [];
> +            if (latestProductiveRevisionNumber && trac.latestRecordedRevisionNumber) {
> +                if (shouldAddDivider) {
> +                    this._addDividerToPopover(content);
> +                    shouldAddDivider = false;
> +                }
> +
> +                lines = this._popoverLinesForCommitRange(trac, queue.branch[repositoryName], latestProductiveRevisionNumber + 1, trac.latestRecordedRevisionNumber);
> +                for (var i = 0; i != lines.length; ++i)
> +                    content.appendChild(lines[i]);
> +
> +                if (lines.length)
> +                    shouldAddDivider = true;
> +            }
> +        }

This is not correct. Suppose there are three repositories A, B and when processing these repositories (in this order) lines.length = 1, 0, respectively. Then the output content will look like A_1, "divider". But it should be A_1.

Maybe something like this will work:

var shouldAddDivider = false;
var sortedRepositories = Dashboard.sortedRepositories;
for (var i = 0; i < sortedRepositories.length; ++i) {
    var repository = sortedRepositories[i];
    var trac = repository.trac;
    var repositoryName = repository.name;
    var latestProductiveRevisionNumber = latestProductiveIteration.revision[repositoryName];
    if (!latestProductiveRevisionNumber || !trac.latestRecordedRevisionNumber)
        continue;
    var lines = this._popoverLinesForCommitRange(trac, queue.branch[repositoryName], latestProductiveRevisionNumber + 1, trac.latestRecordedRevisionNumber);
    var length = lines.length;
    if (length && shouldAddDivider)
        this._addDividerToPopover(content);
    for (var i = 0; i < length; ++i)
        content.appendChild(lines[i]);
    shouldAddDivider = shouldAddDivider || length > 0;
}

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20150815/4eda649c/attachment.html>


More information about the webkit-unassigned mailing list