← Back to team overview

kicad-developers team mailing list archive

Re: Git transition

 

On 8/12/2016 4:30 PM, Chris Pavlina wrote:
> On Fri, Aug 12, 2016 at 03:34:35PM -0400, Wayne Stambaugh wrote:
>> 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.
> 
> That's what I mean about being different for the sake of it. They
> already have a method, why create a new one because they're not us?
> Considering git was created specifically for linux kernel development
> I'd think that if anyone can establish convention, it's them.

They have their own hosting and bug tracking which is a luxury that we
don't have.  What makes sense for linux kernel development may or may
not make sense for us.  There are limitations to what we can do versus
what they can do.  I just want to do things because that's what all the
cool kids are doing.  If it makes sense, then we should adopt it.  If
not we should do what is appropriate for us.  In this case is seems to
make sense.

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