[Cython] code review

Kirill Smelkov kirr at mns.spb.ru
Sun May 4 19:08:24 CEST 2008


Hi, All

В сообщении от Воскресенье 04 мая 2008 Gary Furnish написал(a):
> Trac doesn't have two way notification emails, only outgoing (as far
> as I know).  Roundup looks neat (especially the two way email
> integration), but I'm not happy about the lack of a good interface for
> viewing patches compared to trac's (Example:
> http://trac.sagemath.org/sage_trac/attachment/ticket/3025/9609.patch
> ), as roundup just displays the raw text.

Gary, I see your points.
Having patch viewer is indeed useful, like having two-way emails are useful too.

В сообщении от Воскресенье 04 мая 2008 Stefan Behnel написал(a):
> Kirill Smelkov wrote:
> > I'd like to clarify what I mean saying "good email integration":
> > 
> >   Good email integration is two-way
> > 
> > That is:
> > 
> > -> it is possible to affect state of the issues, add comments to patch review,
> >    etc... by sending mail.
> > <- you get notification mails, when someone changes something through web
> >    interface, or another way.
> 
> Launchpad also has that. You can just reply to the bug notification email and
> it will show up in the ticket comments.

Then this is a plus for Launchpad.

From the other way is it possible to export all stored data from launchpad into
some interoperable format, e.g. csv?


В сообщении от Воскресенье 04 мая 2008 Michael Abshoff написал(a):
> Kirill Smelkov wrote:
> > В сообщении от Воскресенье 04 мая 2008 Gary Furnish написал(a):
> >   
> >> The canonical example of a project that uses trac is Sage:
> >> http://trac.sagemath.org/sage_trac
> >> It has good email integration (notify on ticket modification, etc,
> >> although it is supposed to be even better in the next version).
> >>     
> >
> > I'd like to clarify what I mean saying "good email integration":
> >
> >   Good email integration is two-way
> >
> > That is:
> >
> > -> it is possible to affect state of the issues, add comments to patch review,
> >    etc... by sending mail.
> >   
> 
> Nope.

What do you mean here? You don't agree with my understanding of email integration?
Could you please clarify?


> > <- you get notification mails, when someone changes something through web
> >    interface, or another way.
> >
> >   
> Yes.
> 
> > Personally, I think having the first entry is important - a lot of tasks could
> > be done via plain emails, and at least some people are more productive with
> > keyboard & text editor (compared to clicking with mouse) :)
> >
> >   
> Well, some people like the Debian bugtracker which does let you submit 
> item email, some people don't. Trac does not offer that in the default 
> config and I don't think it is a good idea to do that. Trac offers some 
> subset of wiki tags which make it preferable to use only the 
> webinterface. The Debian bug tracker reads like an email list, so if you 
> want that there is no advantage to switching to Trac.

I don't want to be forced to only use either one of web or email. I *do*
want to use web interface often, but sometimes it is more convenient to reply
via email.

And when it comes to patch review, I think it is imho handy to use
full-featured editor, when commenting on a patch.

Maybe at least for me...

> > Does Trac have two-way email integration?
> >   
> Nope. It might be something available at trac-hacks, but last time I 
> checked I didn't see anything.
> 
> >> Normally we attach patches to a ticket and then just comment them in
> >> the ticket associated with the patch.  This associates the bug/feature
> >> ticket with the patch (as opposed to needing two systems if you went
> >> with something like codeview + launchpad).  Compared to trac,
> >> launchpad is slow for webpage response time.  It is also slow on
> >> ticket creation time (I can create a ticket for a given item in maybe
> >> 30 seconds on one page in trac, whereas launchpad has so much
> >> complexity it is significantly more time consuming, requires a
> >> multipage creation step, etc).
> >>     
> >
> > Gary, All, imagine you could create a patch issue with plain 'hg email',
> > or create new issue with just sending mail to special address.
> >
> > Isn't this cool!?
> >   
> 
> No. I don't really see the benefit there by just firing off an email. 
> Our work flows are probably very different and I am no mouse pusher, but 
> I prefer Trac and its workflow. I was skeptical initially, but since I 
> spend a lot of time daily with Trac putting releases together for Sage I 
> am quite sold on its work flow. I generally dislie the "submit bug 
> report by email" work flow. We have sage-devel for the discussion bit 
> and if we really have an issue we open a ticket.

Ok, I agree emails on usual issues maybe not so handy, and creating issue
via email may have its own drawbacks.

But my initial context was about patch reviews, and then I think
it is handy to do it in fully-featured text editor.

e.g. OP sends a mid-size patch, and reviewer comments, e.g.:

http://groups.google.com/group/sympy-patches/msg/5a23e70f64b1b776
http://groups.google.com/group/sympy-patches/msg/aa5a9ce17b9165bc
http://groups.google.com/group/sympy-patches/msg/0b5107e7885f6dcb

So maybe mailing bug reports is not a good idea, but submitting patches via
'hg email' seems (at least to me) to be good, because sending them is one
button, and importing them is one button, and reviewing them is one button
+ text edits + "y" in the end.

I agree this is not ideal, and could be improved, e.g. thus made text edits
could go into patch issue, and when viewing the diff there would be added
comments from various people.

But you know, nothing is ideal, and the scheme I'm talking about works ok in
a lot of places.

> We run 0.10.x, which is the current stable release. It has a couple 
> issues, but those are mostly getting sorted out in 0.11. The main point 
> of running your own trac install is that you own your data and do not 
> depend on some other org to do things for you.

+1 about managing your own data by yourself.

> Robert Bradshaw wrote an  
> hg inspection module to let you check out patches and bundles online. 

Do you mean importing patches from trac with 'hg somecommand'?

This would be handy.

And also, if there were another 'hg somecommand2' moddeled after 'hg email'
to send patches to trac, it would be handy^2.

Btw, how do I check myself how it works?

> There is also svn integration per default and some optional code to 
> watch commits in an hg repo.


> > Roundup has this now and it works. Also, although Roundup is not so shiny,
> > it was choosen as the tracker for Python itself:
> >
> >   
> Sure, but you need Django and a couple other things. Trac is self 

No, Django is not needed to run roundup.

> contained and has next to no dependencies, i.e. the default db is 
> sqlite. It scales well for Sage, so I would assume it will work well for 
> Cython which deals with a lot fewer patches on average compared to Sage.

Actually there are very little dependencies for roundup - it can even use
plain files as DB (not to depend on anything), or optionally sqlite and
other dbs.

I'd say roundup depends only on Python and optionally on sqlite, pytz.
And also you need to setup exim so that incoming emails work.

> 
> > http://bugs.python.org/
> >
> > What do you think?
> >   
> :)

:)

Guys, please don't get me wrong.

I'm not saying "let's use roundup, period." For amount of patches I observe I
think plain cython-patches would do, and then, if needed, we could use any
tool which would do the job.

Only myself I observed that doing things in text editor is handy, thus I
value tools that provide this ability.

I really hope Guido's codereview would be good though and helpful and well
designed.

Let's settle on something practical,
Kirill.


More information about the Cython-dev mailing list