[Scummvm-devel] Crazy idea about convenient bug status tracking
Alex Bevilacqua
alexbevi at gmail.com
Thu Sep 16 17:17:52 CEST 2010
oops, minor logic error in the last version ;)
require 'rubygems'
require 'hpricot'
require 'open-uri'
> class SourceForgeIssue
attr_reader :title, :priority, :status, :submitted_by, :resolution
attr_reader :assigned_to, :category, :group, :visibility
def initialize(issue_id)
doc = Hpricot(open("
> http://sourceforge.net/tracker/?func=detail&aid=#{issue_id}&group_id=#{GROUP_ID}&atid=#{ATID}
> "))
header =
> doc/"//div[@class='view_artifact']/div[@class='inner-bd']/div[@class='yui-t6']/div[@id='yui-main']/div[@class='yui-gc
> box']/div[@class='yui-u first]/span/strong"
assign("title", header[1])
details_left =
> doc/"//div[@class='view_artifact']/div[@class='inner-bd']/div[@class='yui-t6']/div[@id='yui-main']/div[@class='yui-g
> box']/div[@class='yui-u first']/p"
assign("resolution", details_left[3])
assign("status", details_left[2])
assign("priority", details_left[1])
assign("submitted_by", details_left[0])
> details_right =
> doc/"//div[@class='view_artifact']/div[@class='inner-bd']/div[@class='yui-t6']/div[@id='yui-main']/div[@class='yui-g
> box']/div[@class='yui-u']/p"
assign("assigned_to", details_right[0])
assign("category", details_right[1])
assign("group", details_right[2])
assign("visibility", details_right[3])
end
> private
ATID = 418820
GROUP_ID = 37116
def assign(target, value)
case target
when "title"
@title = strip(value)
@title = @title[0.. at title.length - 15]
when "priority"
@priority = strip(value)
when "resolution"
@resolution = strip(value)
when "status"
@status = strip(value)
when "submitted_by"
@submitted_by = strip(value)
when "assigned_to"
@assigned_to = strip(value)
when "category"
@category = strip(value)
when "group"
@group = strip(value)
when "visibility"
@visibility = strip(value)
end
end
def strip(s)
s.to_s.gsub(/<\/?[^>]*>/, "")
end
> end
> critical = [
3061578, 3038424, 3049515, 3053104, 3060480,
3032758, 3052804, 3032772, 3032763
]
> nice_to_fix= [
3054184, 3032379, 3018770, 3017908, 3049346, 3049336, 3049515,
3064655, 3022067, 2820025, 2721332, 2952298, 2951521, 2843146,
3011646, 3011639, 3011638, 3011635, 2842432, 3000876, 3008511,
2997464, 2969913, 2880939, 2879793, 2879791, 2628056
]
> puts "Release Critical"
critical.each do |c|
i = SourceForgeIssue.new(c)
puts c.to_s + ": " + i.title
end
> puts "Nice to Have Fixed"
nice_to_fix.each do |n|
i = SourceForgeIssue.new(n)
puts n.to_s + ": " + i.title
end
On Thu, Sep 16, 2010 at 11:13 AM, Alex Bevilacqua <alexbevi at gmail.com>wrote:
> Max,
>
> This is just something I whipped up in Ruby that mimics the list that
> Eugene sends out. It's pretty basic, but could be extended to spit out HTML
> if need be ;)
>
> require 'rubygems'
>
> require 'hpricot'
>
> require 'open-uri'
>
>
>> class SourceForgeIssue
>
>
>
> attr_reader :title, :priority, :status, :submitted_by, :resolution
>
> attr_reader :assigned_to, :category, :group, :visibility
>
>
>
> def initialize(issue_id)
>
> doc = Hpricot(open("
>> http://sourceforge.net/tracker/?func=detail&aid=#{issue_id}&group_id=#{GROUP_ID}&atid=#{ATID}
>> "))
>
> header =
>> doc/"//div[@class='view_artifact']/div[@class='inner-bd']/div[@class='yui-t6']/div[@id='yui-main']/div[@class='yui-gc
>> box']/div[@class='yui-u first]/span/strong"
>
>
>
> assign("title", header[1])
>
>
>
> details_left =
>> doc/"//div[@class='view_artifact']/div[@class='inner-bd']/div[@class='yui-t6']/div[@id='yui-main']/div[@class='yui-g
>> box']/div[@class='yui-u first']/p"
>
>
>
> assign("resolution", details_left[3])
>
> assign("status", details_left[2])
>
> assign("priority", details_left[1])
>
> assign("submitted_by", details_left[0])
>
>
>> details_right =
>> doc/"//div[@class='view_artifact']/div[@class='inner-bd']/div[@class='yui-t6']/div[@id='yui-main']/div[@class='yui-g
>> box']/div[@class='yui-u']/p"
>
>
>
> assign("assigned_to", details_right[0])
>
> assign("category", details_right[1])
>
> assign("group", details_right[2])
>
> assign("visibility", details_right[3])
>
> end
>
>
>> private
>
>
>
> ATID = 418820
>
> GROUP_ID = 37116
>
>
>
> def assign(target, value)
>
> case target
>
> when "title"
>
> @title = strip(value)
>
> when "priority"
>
> @priority = strip(value)
>
> when "resolution"
>
> @resolution = strip(value)
>
> when "status"
>
> @status = strip(value)
>
> when "submitted_by"
>
> @submitted_by = strip(value)
>
> when "assigned_to"
>
> @assigned_to = strip(value)
>
> when "category"
>
> @category = strip(value)
>
> when "group"
>
> @group = strip(value)
>
> when "visibility"
>
> @visibility = strip(value)
>
>
>
> end
>
>
>
> end
>
>
>
> def strip(s)
>
> tmp = s.to_s.gsub(/<\/?[^>]*>/, "")
>
> tmp[0..tmp.length - 15]
>
> end
>
>
>> end
>
>
>> critical = [
>
> 3061578, 3038424, 3049515, 3053104, 3060480,
>
> 3032758, 3052804, 3032772, 3032763
>
> ]
>
>
>> nice_to_fix= [
>
> 3054184, 3032379, 3018770, 3017908, 3049346, 3049336, 3049515,
>
> 3064655, 3022067, 2820025, 2721332, 2952298, 2951521, 2843146,
>
> 3011646, 3011639, 3011638, 3011635, 2842432, 3000876, 3008511,
>
> 2997464, 2969913, 2880939, 2879793, 2879791, 2628056
>
> ]
>
>
>> puts "Release Critical"
>
> critical.each do |c|
>
> i = SourceForgeIssue.new(c)
>
> puts c.to_s + ": " + i.title
>
> end
>
>
>> puts "Nice to Have Fixed"
>
> nice_to_fix.each do |n|
>
> i = SourceForgeIssue.new(n)
>
> puts n.to_s + ": " + i.title
>
> end
>
>
> Hopefully this helps you guys.
>
> Alex
>
> On Wed, Sep 15, 2010 at 7:57 AM, Lars Persson <larspp at hotmail.com> wrote:
>
>> Hi!
>> I think this sounds like a very excellent idea. Not exactly my cup of
>> development, but I would really use it if available. :-D
>>
>> Cheers
>> Lars
>>
>> > From: max at quendi.de
>> > Date: Sun, 12 Sep 2010 16:49:37 +0200
>> > To: scummvm-devel at lists.sourceforge.net
>> > Subject: [Scummvm-devel] Crazy idea about convenient bug status tracking
>>
>> >
>> > Hi there,
>> >
>> > at times I say to myself: Would it be handy if one could take the list
>> of bugs that must/should be fixed for a ScummVM bugs from Eugene's email,
>> feed them into a tool, and get a quick overview of them all, including
>> whether the bug is still open or not, whether it is assigned to anybody, and
>> a clickable URL...
>> >
>> >
>> > How cool would it be if somebody did the following: Write a simple HTML
>> + JavaScript page which takes a list of SF.net bug ids, and turns them into
>> a HTML table, with columns for id, artifact type, name, status, etc... and
>> of course a link to the actual bug report.
>> > Kind of replicating what SF.net shows on its bug browser, only that it
>> is filtered by a specific set of bug ids (which SF.net does not allow), and
>> maybe looks a bit differently (e.g. distinguish closed and open bugs
>> visually by color or so, and strongly).
>> >
>> > Initially I'd be happy to only list ScummVM bugs, but at some point,
>> also RFEs and items from other projects could be listed.
>> >
>> > To use it, one could initially just modify the HTML file and insert the
>> list of bug ids (possibly with tracker & project ids added in, too; though
>> those can be discovered by the script). A more advanced version would of
>> course offer buttons for adding and removing items from the table, sorting
>> by different columns, refresh at certain intervals, etc. (and maybe encode
>> the bug ids in the URL, to make it bookmarkable)?
>> >
>> > Even cooler would be to turn this into a website, or widget (for Apple
>> DashBoard or Yahoo Widget, etc.). There is such a widget for Bugzilla &
>> Yahoo Widgets (never tried it myself, though): BugMon <
>> http://widgets.yahoo.com/widgets/bugmon>.
>> > If one wants to be really, *really* cool, of course it would allow
>> tracking and mixing bugs from SF.net trackers, Trac, Bugzilla, Google Code,
>> Mantis, github... but now I am getting really wild... ;)
>> >
>> > Anybody interested in hacking on something like that? Maybe I should
>> propose a bounty for that or something... :)
>> >
>> > Cheers,
>> > Max
>> >
>> ------------------------------------------------------------------------------
>> > Start uncovering the many advantages of virtual appliances
>> > and start using them to simplify application deployment and
>> > accelerate your shift to cloud computing
>> > http://p.sf.net/sfu/novell-sfdev2dev
>> > _______________________________________________
>> > Scummvm-devel mailing list
>> > Scummvm-devel at lists.sourceforge.net
>> > https://lists.sourceforge.net/lists/listinfo/scummvm-devel
>>
>>
>> ------------------------------------------------------------------------------
>> Start uncovering the many advantages of virtual appliances
>> and start using them to simplify application deployment and
>> accelerate your shift to cloud computing.
>> http://p.sf.net/sfu/novell-sfdev2dev
>> _______________________________________________
>> Scummvm-devel mailing list
>> Scummvm-devel at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/scummvm-devel
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.scummvm.org/pipermail/scummvm-devel/attachments/20100916/d331f79d/attachment.html>
More information about the Scummvm-devel
mailing list