[PATCH cubicweb V2] Document mercurial configuration for contributing

Philippe Pepiot philippe.pepiot at logilab.fr
Tue Oct 15 17:56:20 CEST 2019


On 15/10/2019, noe.gaumont at logilab.fr wrote:
> # HG changeset patch
> # User Philippe Pepiot <philippe.pepiot at logilab.fr>
> # Date 1571146256 -7200
> #      Tue Oct 15 15:30:56 2019 +0200
> # Node ID d177d8ab4fd3bd7cbfb773688136a3c023e42fb0
> # Parent  d242a1692907746187b06dd2c0058d3c6ad8c6c6
> # Available At https://hg.logilab.org/review/cubicweb
> #              hg pull https://hg.logilab.org/review/cubicweb -r d177d8ab4fd3
> Document mercurial configuration for contributing
> 
> * how to use master/review repositories
> * how to send the "Available at" command in patchbomb emails
> * how to add the "cubicweb" flag in patchbomb emails
> * how to use our "jenkins" mercurial extension
> 
> Closes #17243538
> 
> diff --git a/README b/README
> --- a/README
> +++ b/README
> @@ -78,3 +78,34 @@ a XMPP client: public at conference.jabber.
>  Mailing list: https://lists.cubicweb.org/mailman/listinfo/cubicweb-devel
>  Patchbomb extension: https://www.mercurial-scm.org/wiki/PatchbombExtension
>  Good practice on sending email patches: https://www.mercurial-scm.org/wiki/ContributingChanges#Emailing_patches
> +
> +Full .hg/hgrc example for contributors having ssh access to ``hg.logilab.org`` :
> +
> +    [paths]
> +    default = https://hg.logilab.org/master/cubicweb
> +    default-push = ssh://hg@hg.logilab.org/review/cubicweb
> +
> +    [email]
> +    to = cubicweb-devel at lists.cubicweb.org
> +
> +    [patchbomb]
> +    publicurl = https://hg.logilab.org/review/cubicweb
> +    flagtemplate = "{separate(' ', 'cubicweb', flags)}"

I'm not sure this is required since no flags mean cubicweb which is the
default purpose of this list.
That being said, I'm not against using this, I even think it's a good
idea :)

We also use a flag "3.26" for patches to be landed in 3.26 branch.

So it could be: flagtemplate = "{separate(' ', 'cubicweb', ifeq(branch, 'default', '', branch), flags)}"

But this patch LGTM as it. Can you apply it ? So we can validate you can
publish patches :)

> +
> +    [jenkins]
> +    url = https://jenkins.logilab.org/
> +    job = cubicweb-default
> +
> +If you don't have ssh access to ``hg.logilab.org``, you can use your own Mercurial server and
> +change ``default-push`` and ``publicurl`` accordingly.
> +A list of services that provides hosting of Mercurial repositories is available
> +on https://www.mercurial-scm.org/wiki/MercurialHosting.
> +
> +* ``hg pull`` will pull on master repo (public changesets).
> +* ``hg push`` will push on review repo using ssh.
> +* When sending an email to the list, it will add a "Available at" with command
> +  to pull the draft series on the public repo.
> +* Using https://hg.logilab.org/master/logilab/devtools/file/tip/hgext/jenkins.py
> +  mercurial extension, ``hg show jenkins`` display jenkins build status for
> +  each changeset. Read https://www.mercurial-scm.org/wiki/UsingExtensions to learn how
> +  to enable a new extension in mercurial.



More information about the cubicweb-devel mailing list