Differences between revisions 22 and 28 (spanning 6 versions)
Revision 22 as of 2013-10-20 14:01:14
Size: 4073
Editor: chapoton
Comment: git and mercurial, details
Revision 28 as of 2015-09-16 09:43:22
Size: 3714
Editor: chapoton
Comment:
Deletions are marked like this. Additions are marked like this.
Line 7: Line 7:
== Patch Buildbot == == Patch Buildbot (Patchbot) ==
Line 9: Line 9:
The second pulls and applies mercurial patches (or git branches) from Trac and can be found at http://patchbot.sagemath.org/ or from links on the individual Trac tickets. This is still very much a work in progress; the latest version of the code lives at https://code.google.com/p/sage-buildbot/ (or at http://github.com/robertwb/sage-patchbot). Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. See ticket http://trac.sagemath.org/sage_trac/ticket/12486. The second pulls and applies git branches from Trac and can be found at http://patchbot.sagemath.org/ or from links on the individual Trac tickets (round icons at top right).
Line 11: Line 11:
If you want to run a patchbot on your machine, see this [[buildbot/details|instruction page]]. You can help by running your own patchbot. See this [[buildbot/details|instruction page]] for installation and usage.
Line 13: Line 13:
=== Usage (Mercurial setting) ===

The Patch Buildbot automatically select patches (from the ticket attachments) to apply. Every Trac ticket has a Patch Buildbot report page, which is accessed by the swirly, round icon at the top of the ticket description. The report page lists the patches the buildbot chose. To override this choice, use the following directive in a ticket comment:

    Apply foo.patch, foo2.patch

Any subsequently added patches will be (semi-intelligently) appended to the list. To tell Patch Buildbot about any ticket dependencies, populate the dependencies field with the ticket number(s) and/or minimum Sage version.

Only the devel repository has branches, so the buildbot is unable to apply and try out patches to extcode/scripts/etc.

=== Usage (Git setting) ===

The Patch Buildbot automatically applies the branch attached to a ticket.
This is still very much a work in progress; the latest version of the code lives at http://github.com/robertwb/sage-patchbot. Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. See ticket http://trac.sagemath.org/sage_trac/ticket/12486.
Line 29: Line 17:
You can see the status of several patches at the same time (replace xxxx by your user name) : You can see the status of several tickets at the same time (replace xxxx by your user name) :
Line 31: Line 19:
For the patches you participated in, see http://patchbot.sagemath.org/ticket/?participant=xxxx For the tickets you participated in, see http://patchbot.sagemath.org/ticket/?participant=xxxx
Line 33: Line 21:
For the patches you authored, see http://patchbot.sagemath.org/ticket/?author=xxxx For the tickets you authored, see http://patchbot.sagemath.org/ticket/?author=xxxx
Line 35: Line 23:
=== Patch Status === === Ticket Status ===
Line 37: Line 25:
The color of the report page icon indicates the status of the patch. See the report page itself for more details. The possible statuses are: The color of the report page icon indicates the status of the ticket. See the report page itself for more details. The possible statuses are:
Line 39: Line 27:
{{http://patchbot.sagemath.org/blob/New}} '''New''' {{http://patchbot.sagemath.org/blob/New}} {{http://patchbot.sagemath.org/svg/New||width=48}} '''New'''
Line 41: Line 29:
{{http://patchbot.sagemath.org/blob/Pending}}* '''Pending''' A patchbot is currently running on this patch. {{http://patchbot.sagemath.org/blob/Pending}}* {{http://patchbot.sagemath.org/svg/Pending||width=48}} '''Pending''' A patchbot is currently running on this ticket. The patchbot may have stopped if the ticket was deemed unsafe.
Line 43: Line 31:
{{http://patchbot.sagemath.org/blob/TestsPassed}} '''!TestsPassed''' Everything is okay, as far as a patchbot can tell. {{http://patchbot.sagemath.org/blob/TestsPassed}} {{http://patchbot.sagemath.org/svg/TestsPassed||width=48}} '''!TestsPassed''' Everything is okay, as far as a patchbot can tell.
Line 45: Line 33:
{{http://patchbot.sagemath.org/blob/ApplyFailed}} '''!ApplyFailed''' The patch could not be applied. This can be caused by conflicts with other patches or dependencies. {{http://patchbot.sagemath.org/blob/ApplyFailed}} {{http://patchbot.sagemath.org/svg/ApplyFailed||width=48}} '''!ApplyFailed''' The branch could not be applied. This can be caused by conflicts with other branches or dependencies. Try rebase your branch on the latest develop branch.
Line 47: Line 35:
{{http://patchbot.sagemath.org/blob/BuildFailed}} '''!BuildFailed''' The patch can be applied, but sage failed to build. {{http://patchbot.sagemath.org/blob/BuildFailed}} {{http://patchbot.sagemath.org/svg/BuildFailed||width=48}} '''!BuildFailed''' The branch can be applied, but sage failed to build, due to errors in the doc or the code. Check the code and the syntax of the doc.
Line 49: Line 37:
{{http://patchbot.sagemath.org/blob/TestsFailed}} '''!TestsFailed''' One or more tests did not succeed. {{http://patchbot.sagemath.org/blob/TestsFailed}} {{http://patchbot.sagemath.org/svg/TestsFailed||width=48}} '''!TestsFailed''' One or more tests did not succeed.
Line 51: Line 39:
{{http://patchbot.sagemath.org/blob/PluginFailed}} '''!PluginFailed''' Documentation, commit messages and trailing whitespaces should be checked. {{http://patchbot.sagemath.org/blob/PluginFailed}} {{http://patchbot.sagemath.org/svg/PluginFailed||width=48}} '''!PluginFailed''' Tests have been successfully done, but plugins have found some problems.
{{http://patchbot.sagemath.org/blob/PluginOnlyFailed}} {{http://patchbot.sagemath.org/svg/PluginOnlyFailed||width=48}} '''!PluginOnlyFailed''' Plugin have found some problems. Tests have not been made.
Line 53: Line 42:
{{http://patchbot.sagemath.org/blob/PluginOnlyFailed}} '''!PluginOnlyFailed''' Documentation, commit messages and trailing whitespaces should be checked. Tests have not been made. {{http://patchbot.sagemath.org/blob/PluginOnly}} {{http://patchbot.sagemath.org/svg/PluginOnly||width=48}} '''!PluginOnly''' Plugins have found no problem. Tests have not been made.
Line 55: Line 44:
{{http://patchbot.sagemath.org/blob/PluginOnly}} '''!PluginOnly''' Only Documentation, commit messages and trailing whitespaces have been validated. Tests have not been made. {{http://patchbot.sagemath.org/blob/NoPatch}} {{http://patchbot.sagemath.org/svg/NoPatch||width=48}} '''!NoPatch''' No branch has been uploaded to Trac so far. The patchbot has nothing to do.
Line 57: Line 46:
{{http://patchbot.sagemath.org/blob/NoPatch}} '''!NoPatch''' No patch has been uploaded to Trac so far. The patchbot has nothing to do.

{{http://patchbot.sagemath.org/blob/Spkg}} '''Spkg''' This is not related to a patch but to a spkg. The patchbot is not concerned.
{{http://patchbot.sagemath.org/blob/Spkg}} {{http://patchbot.sagemath.org/svg/Spkg||width=48}} '''Spkg''' This is related to an spkg. The patchbot will only check the spkg installation.
Line 63: Line 50:
 * Detecting which patches to apply are both performed by string searches on each line of the ticket, and are case insensitive.

 * The patch list directive does not work in ticket descriptions.

* To rerun tests (even though the patches to apply were not modified) add the kick parameter, e.g., http://patchbot.sagemath.org/ticket/12345/?kick
 * To rerun tests (even though the branch was not modified) add the kick parameter, e.g., http://patchbot.sagemath.org/ticket/12345/?kick

Sage has two build bots.

Release Buildbot

The first builds entire tarballs (e.g. all the development releases) on a wide variety of machines. It can be found at http://build.sagemath.org/sage/ .

Patch Buildbot (Patchbot)

The second pulls and applies git branches from Trac and can be found at http://patchbot.sagemath.org/ or from links on the individual Trac tickets (round icons at top right).

You can help by running your own patchbot. See this instruction page for installation and usage.

This is still very much a work in progress; the latest version of the code lives at http://github.com/robertwb/sage-patchbot. Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. See ticket http://trac.sagemath.org/sage_trac/ticket/12486.

Lists of reports

You can see the status of several tickets at the same time (replace xxxx by your user name) :

For the tickets you participated in, see http://patchbot.sagemath.org/ticket/?participant=xxxx

For the tickets you authored, see http://patchbot.sagemath.org/ticket/?author=xxxx

Ticket Status

The color of the report page icon indicates the status of the ticket. See the report page itself for more details. The possible statuses are:

http://patchbot.sagemath.org/blob/New http://patchbot.sagemath.org/svg/New New

http://patchbot.sagemath.org/blob/Pending* http://patchbot.sagemath.org/svg/Pending Pending A patchbot is currently running on this ticket. The patchbot may have stopped if the ticket was deemed unsafe.

http://patchbot.sagemath.org/blob/TestsPassed http://patchbot.sagemath.org/svg/TestsPassed TestsPassed Everything is okay, as far as a patchbot can tell.

http://patchbot.sagemath.org/blob/ApplyFailed http://patchbot.sagemath.org/svg/ApplyFailed ApplyFailed The branch could not be applied. This can be caused by conflicts with other branches or dependencies. Try rebase your branch on the latest develop branch.

http://patchbot.sagemath.org/blob/BuildFailed http://patchbot.sagemath.org/svg/BuildFailed BuildFailed The branch can be applied, but sage failed to build, due to errors in the doc or the code. Check the code and the syntax of the doc.

http://patchbot.sagemath.org/blob/TestsFailed http://patchbot.sagemath.org/svg/TestsFailed TestsFailed One or more tests did not succeed.

http://patchbot.sagemath.org/blob/PluginFailed http://patchbot.sagemath.org/svg/PluginFailed PluginFailed Tests have been successfully done, but plugins have found some problems. http://patchbot.sagemath.org/blob/PluginOnlyFailed http://patchbot.sagemath.org/svg/PluginOnlyFailed PluginOnlyFailed Plugin have found some problems. Tests have not been made.

http://patchbot.sagemath.org/blob/PluginOnly http://patchbot.sagemath.org/svg/PluginOnly PluginOnly Plugins have found no problem. Tests have not been made.

http://patchbot.sagemath.org/blob/NoPatch http://patchbot.sagemath.org/svg/NoPatch NoPatch No branch has been uploaded to Trac so far. The patchbot has nothing to do.

http://patchbot.sagemath.org/blob/Spkg http://patchbot.sagemath.org/svg/Spkg Spkg This is related to an spkg. The patchbot will only check the spkg installation.

Hints and tricks