← Back to team overview

kicad-developers team mailing list archive

Re: Git transition

 

On 8/11/2016 11:28 AM, Chris Pavlina wrote:
> I stand by my recommendation to use a "Fixes: lp:nnnnn" on a line by
> itself. This is _established convention_ in git commit messages. A quick
> example from the Linux kernel tree has Reported-by, Requested-by, Cc,
> Signed-off-by all formatted in this way.
> 
> Come on... it's established convention already, use it. We don't have to
> be different for the sake of it.

It's an established convention for the linux kernel develpers not kicad
developers.  I'm all for adding this information to the commit message.
I looked at Orson's web hook and this is all we need for it to link the
bug reports to the commit.  Let's go with "Fixes: lp:#######" as a
separate line in the commit message and see how it goes.  If we have
issues, we can adjust accordingly.

> 
> lp:nnnn without "Fixes" may not be obvious at first glance to people
> unfamiliar with our conventions.
> 
> On Thu, Aug 11, 2016 at 04:09:11PM +0200, Nick Østergaard wrote:
>> Den 11/08/2016 11.18 skrev "Maciej Sumiński" <maciej.suminski@xxxxxxx>:
>>>
>>> On 08/10/2016 03:34 PM, Wayne Stambaugh wrote:
>>>> On 8/10/2016 5:02 AM, Maciej Sumiński wrote:
>>>>> On 08/08/2016 06:09 PM, Wayne Stambaugh wrote:
>>>>>> The last time I looked, notifications of repo commits still were not
>>>>>> implemented.  This is a show stopper for me.  I don't want to have to
>>>>>> constantly grep the git commit log to see what changed.  If change
>>>>>> notifications are working correctly, then I'm OK with moving forward
>> on
>>>>>> this if you can get the bug fix linking working.  We definitely should
>>>>>> do some testing before we go live with this.
>>>>>
>>>>> I see there is an option to set notifications, in the same way as for
>>>>> the bazaar branches ("Edit your subscriptions" on the right side pane).
>>>>> I could not verify it, as likely I cannot receive notifications for the
>>>>> changes I introduce. Even if it does not work, I can implement it in my
>>>>> webhook.
>>>>
>>>> I spent some time yesterday creating my own git clone of kicad on LP and
>>>> I noticed that the subscriptions that I need appear to be available for
>>>> git repos so we shouldn't need any webhooks in for that unless they do
>>>> not work.
>>>
>>> If they do not work, let me know and I will fix it in the hook.
>>>
>>>>>
>>>>> The webhook has reached beta stage. I have created a dummy project for
>>>>> testing purposes, where you can see a bug report [1] and a commit [2]
>>>>> with message that includes a "fix(es)?[ ]+(lp:|#)?([0-9]+)" regex
>> match.
>>>>> When it is detected, it automatically adds a message, changes the bug
>>>>> status and assignee. One thing that is not possible right now is
>> linking
>>>>> with git branches, as apparently launchpad does not handle this at the
>>>>> moment (or I could not find the right format to specify a branch).
>>>>
>>>> Bug report linking is very important to me since I am responsible for
>>>> the stable branch.  If there is no support for this yet, I'm OK with
>>>> adding the bug report number to the first line of the commit message and
>>>> the URL somewhere in the commit message body.  If I give the OK to use
>>>> git, I will expect all developers that have commit privileges to the
>>>> product repo to follow this without exception.  The commit message for
>>>> bug report fixes must have this format:
>>>>
>>>> Description of bug report fix. (fixes lp:########)
>>>>
>>>> * https://bugs.launchpad.net/kicad/+bug/########
>>>>
>>>> If this is not acceptable, then the git transition will have to wait
>>>> until Canonical gets git bug report linking implemented or Orson beats
>>>> them to it.
>>>
>>> I spoke with a Launchpad developer and they have it already in their
>>> todo list. There is a plan to migrate Launchpad itself to git, so I
>>> believe they will do it well.
>>>
>>> From what I heard, currently it is possible to link git merge requests
>>> to bug reports, so it may temporarily solve the problem.
>>>
>>>>> All we need to do is to set a webhook pointing to my script [3]. If it
>>>>> is accepted, then I am going to create a separate lp account for the
>>>>> automated changes.
>>>>>
>>>>> Currently the webhook works on my home server which has a high uptime,
>>>>> but still it is not as reliable as dedicated servers. If there is
>>>>> someone willing to host it on a better machine, I will be pleased to
>> help.
>>>>>
>>>>> If you are curious about the source code, then I can put it in the
>> KiCad
>>>>> github (once I get a repository there) or just post it somewhere.
>>>>
>>>> I can create a repo on github or you can create a repo on launchpad.
>>>> Either way is fine by me.  If you want to use github, let me know what
>>>> name you want for the repo and your github user name and I will set up
>>>> the repo and give you admin rights.
>>>
>>> I have just pushed the code to Launchpad [1] and consider it ready to
>>> go. There is also a new account (KiCad Janitor) awaiting approval for
>>> kicad-developers membership, so all the changes will be done using this
>>> dedicated account.
>>>
>>> The webhook has been modified to accept a wider set of phrases
>>> indicating a bugfix (now it is (f|F)ix(es|ed|ing)?:? *(lp:|#)?([0-9]+)).
>>>
>>
>> I would like to suggest that we don't write "fixes:" as a prefix, I don't
>> see it adds any added information. Simply write:
>> lp:42444432442
>>
>> And in the rare event it is for multiple bugs just append more lines of it.
>>
>>> Let me know when the git repository is set up, so I can install the
>> webhook.
>>>
>>> Regards,
>>> Orson
>>>
>>> 1. https://launchpad.net/kicad-git-hook
>>>
>>>> Thanks for working on this.
>>>>
>>>> Cheers,
>>>>
>>>> Wayne
>>>>
>>>>>
>>>>> Regards,
>>>>> Orson
>>>>>
>>>>> 1. https://bugs.launchpad.net/kicad-git-test/+bug/1611664
>>>>> 2.
>>>>>
>> https://git.launchpad.net/kicad-git-test/commit/?id=3d29b9be29346fdfaa87cdf8abf6957bf46bb5cd
>>>>> 3. https://orson.net.pl/kicad_git_hook
>>>>>
>>>>>> Before every starts beating the GitHub drum, I have one major issue
>> with
>>>>>> GitHub and that is control.  There is no way that I know of to
>> moderate
>>>>>> a project on github.  Anyone with a github account can submit a pull
>>>>>> requests at anytime even if they are not part of the dev team.  As
>>>>>> project leader, this is an issue.  I'm already a my limit with the
>>>>>> development team we have in place and I really don't want to deal
>> with a
>>>>>> wide open code hosting.  I also have no way of removing someone from
>> the
>>>>>> list should I need to.  I know it hasn't happened yet but I am not
>> naive
>>>>>> enough to think that it wont happen.  At this time, I am more
>>>>>> comfortable with LP until something better comes along or we take full
>>>>>> control a provide our own hosting.
>>>>>>
>>>>>> On 8/8/2016 3:58 AM, Maciej Sumiński wrote:
>>>>>>> Apparently we have not discussed git transition for a long time now,
>> so
>>>>>>> I felt it is the right time to raise the subject again to keep our
>> routine.
>>>>>>>
>>>>>>> Launchpad now supports merge proposals [1] and it looks like they are
>>>>>>> still improving git integration. The only missing feature are links
>>>>>>> between bug fixing commits and respective bug reports (bzr commit ...
>>>>>>> --fixes=lp:123456). It is not supported by git itself, but might be
>>>>>>> resolved using webhooks [2] and appropriate keywords in commit
>> messages
>>>>>>> (e.g. "Fixed a memory leak [fixes #123456]"). If this is the only
>>>>>>> obstacle, then I volunteer to provide code for the hook.
>>>>>>>
>>>>>>> What do you think? Is there anything else that prevents transition?
>>>>>>>
>>>>>>> Regards,
>>>>>>> Orson
>>>>>>>
>>>>>>> 1. https://help.launchpad.net/Code/Git
>>>>>>> 2. https://help.launchpad.net/API/Webhooks
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>>> More help   : https://help.launchpad.net/ListHelp
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Mailing list: https://launchpad.net/~kicad-developers
>>>>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>>>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>>>>> More help   : https://help.launchpad.net/ListHelp
>>>>>>
>>>>>
>>>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~kicad-developers
>>> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~kicad-developers
>>> More help   : https://help.launchpad.net/ListHelp
>>>
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 


Follow ups

References