[med-svn] r1358 - trunk/community/infrastructure/test

tille at alioth.debian.org tille at alioth.debian.org
Mon Feb 11 19:32:16 UTC 2008


Author: tille
Date: 2008-02-11 19:32:15 +0000 (Mon, 11 Feb 2008)
New Revision: 1358

Modified:
   trunk/community/infrastructure/test/update-tasks
   trunk/community/infrastructure/test/update-tasks_using_python-debian
Log:
Issue with repeated descriptions solve, reason was strong requirement of lists for all HTML_Template stuff; solution was to provide "list of indizees" to reference our list of DependantPackage structures in the render* routines;  NEEDS FIX: Finally there is some error in reder function.


Modified: trunk/community/infrastructure/test/update-tasks
===================================================================
--- trunk/community/infrastructure/test/update-tasks	2008-02-11 16:50:49 UTC (rev 1357)
+++ trunk/community/infrastructure/test/update-tasks	2008-02-11 19:32:15 UTC (rev 1358)
@@ -46,14 +46,16 @@
 	node.date.content = formatdate(time.mktime(t.timetuple()))
 
 	official = cdeps.GetNamesOnlyDict(('official',))
-	for deppkg in cdeps.tasks[task].dependencies['official']:
-		node.official_head.raw = """<h2>
+	#	for deppkg in cdeps.tasks[task].dependencies['official']:
+        node.official_head.raw = """<h2>
 <a id="official-debs" name="official-debs"></a>
 	Official Debian packages
 </h2>"""
-		node.official.repeat(renderOfficial,
-			     cdeps.GetListOfDepsForTask(task, dependencytypes=('official',)),
-			     deppkg)
+	# HTML_Template wants a list as argument so we provide a list of indizes to address
+	# the list of DependantPackage instances inside renderOfficial
+	list_of_dependencies = cdeps.GetListOfDepsForTask(task, dependencytypes=('official',))
+	node.official.repeat(renderOfficial,
+			     range(len(list_of_dependencies)))
 
 #	if task in todo:
 #		error = True
@@ -61,39 +63,38 @@
 #		error = False
 
 	unofficial = cdeps.GetNamesOnlyDict(('unofficial',))
-	if deppkg in cdeps.tasks[task].dependencies['unofficial']:
+	if len(unofficial) > 0:
 		node.unofficial_head.raw = """<h2>
 <a id="inofficial-debs" name="inofficial-debs"></a>
-	Inofficial Debian packages
+	Unofficial Debian packages
 </h2>"""
-		node.unofficial.repeat(renderUnofficial,
-			       cdeps.GetListOfDepsForTask(task, dependencytypes=('unofficial',)),
-			       deppkg)
-		error = False
+		list_of_dependencies = cdeps.GetListOfDepsForTask(task, dependencytypes=('unofficial',))
+		node.unofficial.repeat(renderUnofficial, range(len(list_of_dependencies)))
+		# error = False
 
-	unavailable = cdeps.GetNamesOnlyDict(('prospective',))
-	if deppkg in cdeps.tasks[task].dependencies['prospective']:
+	prospective = cdeps.GetNamesOnlyDict(('prospective',))
+	if len(prospective) > 0:
 		node.unavailable_head.raw = """<h2>
 <a id="debs-not-available" name="debs-not-available"></a>
 	Debian packages not available
 </h2>"""
-		node.unavailable.repeat(renderUnavailable,
-			       cdeps.GetListOfDepsForTask(task, dependencytypes=('prospective',)),
-			       deppkg)
-		error = False
+		list_of_dependencies = cdeps.GetListOfDepsForTask(task, dependencytypes=('prospective',))
+		node.unavailable.repeat(renderProspective, range(len(list_of_dependencies)))
+		# error = False
 
 #	if error:
 		# The package probably needs a proper prospective entry in the
 		# task files. Write it to stdout.
 #		print "Error: problems with %s" % task
 
-def renderOfficial(node, package, deppkg):
+def renderOfficial(node, package_no):
 	# Here we parse just official packages
+	deppkg = cdeps.tasks[task].dependencies['official'][package_no]
 	node.shortdesc.content = deppkg.pkgShortDesc
-	node.project.raw = "<table class=\"project\" summary=\"%s\">" % package
-	node.anchor.atts['name'] = package
-	node.anchor.atts['id'] = package
-	node.name.content = package.capitalize()
+	node.project.raw = "<table class=\"project\" summary=\"%s\">" % deppkg.pkg
+	node.anchor.atts['name'] = deppkg.pkg
+	node.anchor.atts['id'] = deppkg.pkg
+	node.name.content = deppkg.pkg.capitalize()
 	node.url.atts['href'] = deppkg.homepage
 	if deppkg.homepage == "#":
 		node.url.content = "Homepage not available"
@@ -111,58 +112,59 @@
 	node.deburl.raw = "<img src=\"/img/deb-icon.png\" />"
 
 
-def renderUnofficial(node, package, deppkg):
+def renderUnofficial(node, package_no):
 	# Here we parse just unofficial packages
+	deppkg = cdeps.tasks[task].dependencies['unofficial'][package_no]
 	node.shortdesc.content = deppkg.pkgShortDesc
-	node.longdesc.raw = cdeps.tasks[task].dependencies['unofficial'][package].pkgLongDesc
-	node.project.raw = "<table class=\"project\" summary=\"%s\">" % package['Package']
-	node.anchor.atts['name'] = package['Package']
-	node.anchor.atts['id'] = package['Package']
-	node.name.content = package['Package'].capitalize()
-	node.url.atts['href'] = package['Homepage']
-	node.url.content = package['Homepage']
-	node.license.content = "License: %s" %package['License']
-	node.pkgurl.atts['href'] = package['Pkg-URL']
-	node.pkgurl.content = "Inofficial Debian package"
+	node.longdesc.raw = deppkg.pkgLongDesc
+	node.project.raw = "<table class=\"project\" summary=\"%s\">" % deppkg.pkg
+	node.anchor.atts['name'] = deppkg.pkg
+	node.anchor.atts['id'] = deppkg.pkg
+	node.name.content = deppkg.pkg.capitalize()
+	node.url.atts['href'] = deppkg.homepage
+	node.url.content = deppkg.homepage
+	node.license.content = "License: %s" % deppkg.license
+	node.pkgurl.atts['href'] = deppkg.pkgURL
+	node.pkgurl.content = "Unofficial Debian package"
 
 	# Let's try to get the version from the package name
 	# (following Debian standards: <name>_<ver>_<arch>.deb)
-	regex = ".*/%s_(?P<version>.*)_.*\.deb$" % package['Package']
+	regex = ".*/%s_(?P<version>.*)_.*\.deb$" % deppkg.pkg
 	p = re.compile(regex)
-	m = p.search(package['Pkg-URL'])
+	m = p.search(deppkg.pkgURL)
 	if m:
 		node.version.content = "Version: %s" % m.group("version")
 	else:
 		node.version.content = "Version: N/A"
 
 
-def renderUnavailable(node, package):
+def renderProspective(node, package_no):
 	# Parsing unavailable packages :(
 	# PACKAGE THEM! :)
-	name = package['Package']
-	if package['ShortDesc']:
-		node.shortdesc.content = package['ShortDesc']
+	deppkg = cdeps.tasks[task].dependencies['prospective'][package_no]
+	if deppkg.pkgShortDesc:
+		node.shortdesc.content = deppkg.pkgShortDesc
 	else:
 		node.shortdesc.content = "N/A"
-	node.longdesc.raw = package['LongDesc']
-	node.project.raw = "<table class=\"project\" summary=\"%s\">" % name
-	if package['Responsible']:
-		node.responsible.content = package['Responsible']
+	node.longdesc.raw = deppkg.pkgLongDesc
+	node.project.raw = "<table class=\"project\" summary=\"%s\">" % deppkg.pkg
+	if deppkg.responsible:
+		node.responsible.content = deppkg.responsible
 	else:
 		node.responsible.raw = "no one"
-	if package['WNPP']:
-		node.wnpp.raw = " &mdash; <a href=\"http://bugs.debian.org/%s\">wnpp</a>" % package['WNPP']
-	node.anchor.atts['name'] = name
-	node.anchor.atts['id'] = name
-	node.name.content = name.capitalize()
-	if package['Homepage']:
-		node.url.atts['href'] = package['Homepage']
-		node.url.content = package['Homepage']
+	if deppkg.wnpp:
+		node.wnpp.raw = " &mdash; <a href=\"http://bugs.debian.org/%s\">wnpp</a>" % deppkg.wnpp
+	node.anchor.atts['name'] = deppkg.pkg
+	node.anchor.atts['id'] = deppkg.pkg
+	node.name.content = deppkg.pkg.capitalize()
+	if deppkg.homepage:
+		node.url.atts['href'] = deppkg.homepage
+		node.url.content = deppkg.homepage
 	else:
 		node.url.atts['href'] = "#"
 		node.url.content = "N/A"
-	if package['License']:
-		node.license.raw = "<?=_('License')?>: %s" % package['License']
+	if deppkg.license:
+		node.license.raw = "<?=_('License')?>: %s" % deppkg.license
 	else:
 		node.license.raw = "<?=_('License')?>: N/A"
 

Modified: trunk/community/infrastructure/test/update-tasks_using_python-debian
===================================================================
--- trunk/community/infrastructure/test/update-tasks_using_python-debian	2008-02-11 16:50:49 UTC (rev 1357)
+++ trunk/community/infrastructure/test/update-tasks_using_python-debian	2008-02-11 19:32:15 UTC (rev 1358)
@@ -25,17 +25,17 @@
 component = 'main'
 print "---------- %s ----------" % component
 for pkg in available.packages[component].keys():
-    print pkg, ':', available.packages[component][pkg].pkgShortDesc, '/', available.packages[component][pkg].homepage
+    print pkg, ':', available.packages[component][pkg].homepage, "\n ", available.packages[component][pkg].pkgLongDesc
 
 component = 'contrib'
 print "---------- %s ----------" % component
 for pkg in available.packages[component].keys():
-    print pkg, ':', available.packages[component][pkg].pkgShortDesc, '/', available.packages[component][pkg].homepage
+    print pkg, ':', available.packages[component][pkg].homepage, "\n ", available.packages[component][pkg].pkgLongDesc
 
 component = 'non-free'
 print "---------- %s ----------" % component
 for pkg in available.packages[component].keys():
-    print pkg, ':', available.packages[component][pkg].pkgShortDesc, '/', available.packages[component][pkg].homepage
+    print pkg, ':', available.packages[component][pkg].homepage, "\n", available.packages[component][pkg].pkgLongDesc
 
 sys.exit(0)
 




More information about the debian-med-commit mailing list