Thanks Ralf, 

I agree that Pauli and David have a lot of say in what we do.   Thanks for 
reminding.    We will wait to hear from them.   If together you three feel like 
we should set up a separate Redmine instance than we can do that and just pay 
special attention with the Github integration and links in the right places to 
make sure the conversations stay connected. 

I just wanted to point out some of the benefits of Github that I've noticed.  I 
can see pros and cons for both.   Thanks for reminding me of the issue that 
users can't assign lables --- that must be done by a maintainer.     That might 
be a benefit though, providing some control over how labels get assigned.  

Thanks, 

-Travis






On May 1, 2012, at 2:34 PM, Ralf Gommers wrote:

> 
> 
> On Tue, May 1, 2012 at 9:12 AM, Charles R Harris <charlesr.har...@gmail.com> 
> wrote:
> 
> 
> On Tue, May 1, 2012 at 12:52 AM, Travis Oliphant <tra...@continuum.io> wrote:
> 
> On Apr 30, 2012, at 10:14 PM, Jason Grout wrote:
> 
>> On 4/30/12 6:31 PM, Travis Oliphant wrote:
>>> Hey all,
>>> 
>>> We have been doing some investigation of various approaches to issue 
>>> tracking.      The last time the conversation left this list was with 
>>> Ralf's current list of preferences as:
>>> 
>>> 1) Redmine
>>> 2) Trac
>>> 3) Github
>>> 
>>> Since that time, Maggie who has been doing a lot of work settting up 
>>> various issue tracking tools over the past couple of months, has set up a 
>>> redmine instance and played with it.   This is a possibility as a future 
>>> issue tracker.
>>> 
>>> However, today I took a hard look at what the IPython folks are doing with 
>>> their issue tracker and was very impressed by the level of community 
>>> integration that having issues tracked by Github provides.    Right now, we 
>>> have a major community problem in that there are 3 conversations taking 
>>> place (well at least 2 1/2).   One on Github, one on this list, and one on 
>>> the Trac and it's accompanying wiki.
>>> 
>>> I would like to propose just using Github's issue tracker.    This just 
>>> seems like the best move overall for us at this point.    I like how the 
>>> Pull Request mechanism integrates with the issue tracking.    We could 
>>> setup a Redmine instance but this would just re-create the same separation 
>>> of communities that currently exists with the pull-requests, the mailing 
>>> list, and the Trac pages.   Redmine is nicer than Trac, but it's still a 
>>> separate space.   We need to make Github the NumPy developer hub and not 
>>> have it spread throughout several sites.
>>> 
>>> The same is true of SciPy.    I think if SciPy also migrates to use Github 
>>> issues, then together with IPython we can really be a voice that helps 
>>> Github.   I will propose to NumFOCUS that the Foundation sponsor migration 
>>> of the Trac to Github for NumPy and SciPy.    If anyone would like to be 
>>> involved in this migration project, please let me know.
>>> 
>>> Comments, concerns?
>> 
>> I've been pretty impressed with the lemonade that the IPython folks have 
>> made out of what I see as pretty limiting shortcomings of the github 
>> issue tracker.  I've been trying to use it for a much smaller project 
>> (https://github.com/sagemath/sagecell/), and it is a lot harder, in my 
>> (somewhat limited) experience, than using trac or the google issue 
>> tracker.  None of these issues seems like it would be too hard to solve, 
>> but since we don't even have the source to the tracker, we're somewhat 
>> at github's mercy for any improvements.  Github does have a very nice 
>> API for interacting with the data, which somewhat makes up for some of 
>> the severe shortcomings of the web interface.
>> 
>> In no particular order, here are a few that come to mind immediately:
>> 
>> 1. No key:value pairs for labels (Fernando brought this up a long time 
>> ago, I think).  This is brilliant in Google code's tracker, and allows 
>> for custom fields that help in tracking workflow (like status, priority, 
>> etc.).  Sure, you can do what the IPython folks are doing and just 
>> create labels for every possible status, but that's unwieldy and takes a 
>> lot of discipline to maintain.  Which means it takes a lot of developer 
>> time or it becomes inconsistent and not very useful.
> 
> I'm not sure how much of an issue this is.  A lot of tools use single tags 
> for categorization and it works pretty well.  A simple "key:value" label 
> communicates about the same information together with good query tools.
> 
>> 
>> 2. The disjointed relationship between pull requests and issues.  They 
>> share numberings, for example, and both support discussions, etc.  If 
>> you use the API, you can submit code to an issue, but then the issue 
>> becomes a pull request, which means that all labels on the issue 
>> disappear from the web interface (but you can still manage to set labels 
>> using the list view of the issue tracker, if I recall correctly).  If 
>> you don't attach code to issues, it means that every issue is duplicated 
>> in a pull request, which splits the conversation up between an issue 
>> ticket and a pull request ticket.
> 
> Hmm..  So pull requests *are* issues.    This sounds like it might actually 
> be a feature and also means that we *are* using the Github issue tracker 
> (just only those issues that have a pull-request attached).     Losing labels 
> seems like a real problem (are they really lost or do they just not appear in 
> the pull-request view?)
> 
>> 
>> 3. No attachments for issues (screenshots, supporting documents, etc.). 
>>  Having API access to data won't help you here.
> 
> Using gists and references to gists can overcome this.   Also using an 
> attachment service like http://uploading.com/ or dropbox makes this problem 
> less of an issue really. 
> 
>> 
>> 4. No custom queries.  We love these in the Sage trac instance; since we 
>> have full access to the database, we can run any sort of query we want. 
>>  With API data access, you can build your own queries, so maybe this 
>> isn't insurmountable.
> 
> yes, you can build your own queries.    This seems like an area where github 
> can improve (and tools can be written which improve the experience).  
> 
>> 
>> 5. Stylistically, the webpage is not very dense on information.  I get 
>> frustrated when trying to see the issues because they only come 25 at a 
>> time, and never grouped into any sort of groupings, and there are only 3 
>> options for sorting issues.  Compare the very nice, dense layout of 
>> Google Code issues or bitbucket.  Google Code issues also lets you 
>> cross-tabulate the issues so you can quickly triage them.  Compare also 
>> the pretty comprehensive options for sorting and grouping things in trac.
> 
> Yes, it looks like you can group via labels, milestones, and "your" issues.   
> This is also something that can be over-come with tools that use the github 
> API.  
> 
> 
> It would be good to hear from users of the IPython github issue tracker to 
> see how they like it "in the wild".   How problematic are these issues in 
> practice.   Does it reduce or increase the participation in issue tracking 
> both by users and by developers.  
> 
> Thanks,  
> 
> -Travis
> 
> 
> 
> 
>> 
>> 6. Side-by-side diffs are nice to have, and I believe bitbucket and 
>> google code both have them.  Of course, this isn't a deal-breaker 
>> because you can always pull the branch down, but it would be nice to 
>> have, and there's not really a way we can put it into the github tracker 
>> ourselves.
>> 
>> How does, for example, the JIRA github connector work?  Does it pull in 
>> code comments, etc.?
>> 
>> Anyways, I'm not a regular contributor to numpy, but I have been trying 
>> to get used to the github tracker for about a year now, and I just keep 
>> getting more frustrated at it.  I suppose the biggest frustrating part 
>> about it is that it is closed source, so even if I did want to scratch 
>> an itch, I can't.
>> 
>> That said, it is nice to have code and dev conversations happening in 
>> one place.  There are great things about github issues, of course.  But 
>> I'm not so sure, for me, that they outweigh some of the administrative 
>> issues listed above.
>> 
> 
> 
> I'm thinking we could do worse than simply take Ralf's top pick. Github 
> definitely sounds a bit clunky for issue tracking, and while we could put 
> together workarounds, I think Jason's point about the overall frustration is 
> telling. And while we could, maybe, put together tools to work with it, I 
> think what we want is something that works out of the box. Implementing 
> workarounds for a frustrating system doesn't seem the best use of developer 
> time. 
> 
> Having looked at the IPython issues and Jason's example, it's still my 
> impression that Github is inferior to Trac/Redmine as a bug tracker -- but 
> not as much as I first thought. The IPython team has  managed to make it work 
> quite well (assuming you can stand the multi-colored patchwork of labels...).
> 
> At this point it's probably good to look again at the problems we want to 
> solve:
> 1. responsive user interface (must absolutely have)
> 2. mass editing of tickets (good to have)
> 3. usable API (good to have)
> 4. various ideas/issues mentioned at 
> http://projects.scipy.org/numpy/wiki/ImprovingIssueWorkflow
> 
> Note that Github does solve 1, 2 and 3 (as does Redmine). It does come with 
> some new problems that require workarounds, but we can probably live with 
> them. I'm not convinced that being on Github will actually get more eyes on 
> the tickets, but there certainly won't be less.
> 
> The main problem with Github (besides the issues/PRs thing and no 
> attachments, which I can live with) is that to make it work we'll have to 
> religiously label everything. And because users aren't allowed to attach 
> labels, it will require a larger time investment from maintainers. Are we 
> okay with that? If everyone else is and we can distribute this task, it's 
> fine with me.
> 
> David has been investigating bug trackers long before me, and Pauli has done 
> most of the work administering Trac as far as I know, so I'd like to at least 
> hear their preferences too before we make a decision. Then I hope we can move 
> this along quickly, because any choice will be a huge improvement over the 
> current situation.
> 
> Ralf
> 
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to