← Back to team overview

kicad-developers team mailing list archive

Re: Git transition

 

On 8/11/2016 5:17 AM, Maciej Sumiński wrote:
> 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.

I'll see if I can figure out how to do this and if it works we can use
it instead of adding the bug report url to the commit message.  I wonder
if we can link a commit to a bug report?  That could be an issue if we
cannot.  I don't want to have to always create a separate branch, push
it to my personal repo, and then merge it into the product branch for
simple bug fixes.

> 
>>> 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]+)).
> 
> Let me know when the git repository is set up, so I can install the webhook.

This will require some coordination with our package devs.  Package
devs, when can we be ready to provide nightly builds from the git repo?
Does anyone else have any issues with converting over to git?  Speak now
or forever hold your peace.

> 
> 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
>>>>
>>>
>>>
> 
> 


Follow ups

References