Re: [Reportbug-maint] Short term plan for Reportbug versions

2008-08-30 Thread Sandro Tosi
On Sun, Aug 17, 2008 at 01:53, Sandro Tosi [EMAIL PROTECTED] wrote:
 2. merge Chris' branch onto trunk and upload it in experimental

 on going: I had a really hard time to get this working, since modules/
 branch was created from a git-svn repo, so all the history would be
 lost if I had merged onto trunk (and tech issues prevent this, like
 reportbug file-dir change).

 So what I did was:

 1. copy trunk to branches/manual_merge
 2. apply merge.sh (attached) from within manual_merge
 3. manual picking files from branches/modules and copying to
 manual_merge (Notes: I didn't merge README.developers, but take a note
 on TODO to update source layout section; reapplied fixes in 3.45 to
 reportbug/ui/urwid.py and reportbug/debianbts.py)

 Chris, please give it (it=branches/manual_merge) a look, if all your
 changes are there. If for you it's ok, I'll

2 weeks, no reply: I'm going on.

 1. svn mv trunk branches/trunk_premodules

Done:
$ svn mv svn+ssh://[EMAIL PROTECTED]/svn/reportbug/trunk
svn+ssh://[EMAIL PROTECTED]/svn/reportbug/branches/trunk_bck_2008-08-30

 2. svn mv branches/manual_merge trunk

Done:
svn cp svn+ssh://[EMAIL PROTECTED]/svn/reportbug/branches/manual_merge
svn+ssh://[EMAIL PROTECTED]/svn/reportbug/trunk

Please, check out again trunk:

svn co svn+ssh://[EMAIL PROTECTED]/svn/reportbug/trunk reportbug

Sandro

-- 
Sandro Tosi (aka morph, Morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi

___
Reportbug-maint mailing list
Reportbug-maint@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/reportbug-maint


Re: [Reportbug-maint] Python API to Access Debian BTS - python-btsutils vs python-debianbts

2008-08-30 Thread Bastian Venthur


Sandro Tosi schrieb:
 Hello guys,
 it's been a long time since this thread started and I'd like to revamp
 it a little.

[...]
 
 I think that implement the full SOAP interface the BTS exposes won't
 be a big trouble; maybe we can involve Don in this discussion to
 spread some light on.
 
 Apart from this, since I'm planning to evaluate a migration to SOAP
 BTS querying, did you guys come to an agreement about the future of
 the package? Will there be just one (let's call it the Official python
 binding for BTS SOAP) of the two currently in the archive? That would
 be interesting to have, to leverage your work and joint the effort on
 it.

Gustavo wrote on 2008-07-22:

 I second Bastian on using the SOAP interface; btsutils has some support
 to html parsing as SOAP was somewhat in development/maturing when I
 wrote it, but I don't think it's needed anymore.

so it looks like he would drop python-btsutils in favour for
python-debianbts. I still think reportbug should use the SOAP interface
instead of the html parsing, regardeless which package you choose. If
you decide to use debianbts I'm still happy to discuss an interface (if
you don't like the current one) and rewrite it so that reportbug and
reportbug-ng can use it. I don't know if I offered it before but I'd
also teammaintain that package so you don't have to fear that I change
something which might break reportbug.

In general I think it's a good thing that you evaluate the switch to
SOAP. I did it with reportbug-ng before and it's much more reliable now.
HTML-parsing is error prone, depends on the *webdesign* of the BTS and
takes many lines of code. The SOAP counterpart is straight forward and
easy to use.

If you want to play with the SOAP, just install python-debianbts and
play around. It's dead easy:

 import debianbts
 buglist = debianbts.get_bugs(package, reportbug-ng)
 buglist
[420149, 458575, 477663, 464843, 435849, 476298, 491927, 416586, 495397,
431318, 489359, 492835, 479201, 457189, 496544, 435553, 494770, 433289,
431788, 445569, 452818, 432791, 434212, 478436, 448847, 474955, 431711,
458571, 433300, 433114, 494282, 492715, 416133, 439203, 440568, 433580,
482827, 432129, 445287, 448852, 457045]
 status = debianbts.get_status(buglist)
 for i in status:
... print i

each status-object as attributes like, bugnumber, package, summary and
so on.


Cheers,

Bastian

-- 
Bastian Venthur  http://venthur.de
Debian Developer venthur at debian org


___
Reportbug-maint mailing list
Reportbug-maint@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/reportbug-maint


Re: [Reportbug-maint] Reportbug - adding a GTK UI

2008-08-30 Thread Luca Bruno
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Sat, 30 Aug 2008 01:49:26 +0200
Luca Bruno [EMAIL PROTECTED] wrote:

 Continued the work, as usual I've attached the .py file.
 It's almost complete for basic bug reporting.
 Please let me know what you think about.
 

The frontend is now almost complete. It's missing the wrapper for querying a 
single report and submit more informations.
I've added the copyright.
I'm now trying to get it working in trunk.

Best regards,

- -- 
http://syx.googlecode.com - Smalltalk YX
http://lethalman.blogspot.com - Thoughts about computer technologies
http://www.ammazzatecitutti.org - Ammazzateci tutti
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAki5080ACgkQw9Qj+8Kak3FXIgCdEWon06/x62tweYtqxGuXLZUH
Yg4AoJBioO1ds7djAWP4cagUAnejkUmz
=LHID
-END PGP SIGNATURE-
# reportbuglib/reportbug_ui_gnome2.py
# GTK+ user interface for reportbug
#   Written by Luca Bruno [EMAIL PROTECTED]
#   Based on gnome-reportbug work done by Philipp Kern [EMAIL PROTECTED]
#   Copyright (C) 2006 Philipp Kern
#   Copyright (C) 2008 Luca Bruno
#
# This program is freely distributable per the following license:
#
##  Permission to use, copy, modify, and distribute this software and its
##  documentation for any purpose and without fee is hereby granted,
##  provided that the above copyright notice appears in all copies and that
##  both that copyright notice and this permission notice appear in
##  supporting documentation.
##
##  I DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
##  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL I
##  BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY
##  DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
##  WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
##  ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
##  SOFTWARE.
#
# Version ##VERSION##; see changelog for revision history

import gtk
import sys
from gtk import gdk
import gobject
import re
import os

gdk.threads_init ()

from Queue import Queue
import threading

if __name__ == '__main__':
sys.path.append ('..')

from reportbug_ui_text import ewrite
from reportbug_exceptions import NoPackage, NoBugs, NoNetwork, NoReport

ISATTY = True

# Utilities

def highlight (s):
return 'b%s/b' % s

re_markup_free = re.compile (.*?)

def markup_free (s):
return re_markup_free.sub (, s)

def ask_free (s):
s = s.strip ()
if s[-1] in ('?', ':'):
return s[:-1]
return s

def create_scrollable (widget):
scrolled = gtk.ScrolledWindow ()
scrolled.set_shadow_type (gtk.SHADOW_ETCHED_IN)
scrolled.set_policy (gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
scrolled.add (widget)
return scrolled

class ErrorDialog (gtk.MessageDialog):
def __init__ (self, application):
gtk.MessageDialog.__init__ (self, assistant, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,
gtk.MESSAGE_ERROR, gtk.BUTTONS_CLOSE)
self.application = application
self.connect ('response', self.on_response)

def on_response (self, dialog, res):
self.destroy ()

def execute_operation (self, msg, yeshelp, nohelp, default=True, nowrap=False, ui=None):
self.set_markup (msg+?)
self.show_all ()

def error_dialog (message):
dialog = gtk.MessageDialog (self, assistant, gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,
gtk.MESSAGE_ERROR, gtk.BUTTONS_CLOSE, essage)
dialog.connect ('response', lambda *args: dialog.destroy)
dialog.set_title ('Reportbug')
dialog.show_all ()

# BTS

class Bug (object):
def __init__ (self, raw):
# Skip the '#'
raw = raw[1:]
bits = re.split(r'[: ]', raw, 2)
self.id, self.tag, self.data = bits
# Remove [ and ]
self.tag = self.tag[1:-1]
self.data = self.data.strip ()
self.package = self.data.split(']', 1)[0][1:]

self.reporter = self.get_data (Reported by:)
self.date = self.get_data (Date:)
self.severity = self.get_data(Severity:).capitalize ()
self.version = self.get_data (Found in version)
self.filed_date = self.get_data (Filed)
self.modified_date = self.get_data (Modified)

# Get rid of [package] which has been stored in self.package
self.info = self.data.split(']', 1)[1][:self.data.index (Reported by:)].strip ()
if not self.info:
self.info = '(no subject)'   

def get_data (self, token):
info = ''
try:
index = self.data.lower().index (token.lower ())
except:
return '(unknown)'

i = index + len(token)
while True:
c = self.data[i]
if c == ';':
break
info += c
i += 1
return info.strip ()

def __iter__ (self):

Re: [Reportbug-maint] Reportbug - adding a GTK UI

2008-08-30 Thread Sandro Tosi
 The frontend is now almost complete. It's missing the wrapper for querying a 
 single report and submit more informations.
 I've added the copyright.
 I'm now trying to get it working in trunk.

Luca, first of all, thanks a lot for your work.

As done in the last days, we keep syncing each other on IRC, and I
hope we will soon be able to merge your code.

Cheers,
-- 
Sandro Tosi (aka morph, Morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi

___
Reportbug-maint mailing list
Reportbug-maint@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/reportbug-maint