- add icon tag to specfile and metadata
- fix bugs in specfile.read()
This commit is contained in:
@@ -108,6 +108,7 @@ class MetaData(XmlFile):
|
|||||||
self.package.name = pkg.name
|
self.package.name = pkg.name
|
||||||
self.package.summary = pkg.summary
|
self.package.summary = pkg.summary
|
||||||
self.package.description = pkg.description
|
self.package.description = pkg.description
|
||||||
|
self.package.icon = pkg.icon
|
||||||
self.package.isa = pkg.isa
|
self.package.isa = pkg.isa
|
||||||
self.package.partof = pkg.partof
|
self.package.partof = pkg.partof
|
||||||
self.package.license = pkg.license
|
self.package.license = pkg.license
|
||||||
|
|||||||
@@ -212,6 +212,7 @@ class SourceInfo:
|
|||||||
self.summary = getNodeText(node, "Summary")
|
self.summary = getNodeText(node, "Summary")
|
||||||
self.description = getNodeText(node, "Description")
|
self.description = getNodeText(node, "Description")
|
||||||
self.license = map(getNodeText, getAllNodes(node, "License"))
|
self.license = map(getNodeText, getAllNodes(node, "License"))
|
||||||
|
self.icon = getNodeText(node, "Icon")
|
||||||
self.isa = map(getNodeText, getAllNodes(node, "IsA"))
|
self.isa = map(getNodeText, getAllNodes(node, "IsA"))
|
||||||
self.partof = getNodeText(node, "PartOf")
|
self.partof = getNodeText(node, "PartOf")
|
||||||
archiveNode = getNode(node, "Archive")
|
archiveNode = getNode(node, "Archive")
|
||||||
@@ -234,7 +235,10 @@ class SourceInfo:
|
|||||||
if self.homepage:
|
if self.homepage:
|
||||||
xml.addTextNodeUnder(node, "Homepage", self.homepage)
|
xml.addTextNodeUnder(node, "Homepage", self.homepage)
|
||||||
node.appendChild(self.packager.elt(xml))
|
node.appendChild(self.packager.elt(xml))
|
||||||
|
xml.addTextNodeUnder(node, "Summary", self.summary)
|
||||||
xml.addTextNodeUnder(node, "Description", self.description)
|
xml.addTextNodeUnder(node, "Description", self.description)
|
||||||
|
if self.icon:
|
||||||
|
xml.addTextNodeUnder(node, "Icon", self.icon)
|
||||||
for lic in self.license:
|
for lic in self.license:
|
||||||
xml.addTextNodeUnder(node, "License", lic)
|
xml.addTextNodeUnder(node, "License", lic)
|
||||||
for isa in self.isa:
|
for isa in self.isa:
|
||||||
@@ -287,6 +291,7 @@ class PackageInfo:
|
|||||||
self.isa = map(getNodeText, getAllNodes(node, "IsA"))
|
self.isa = map(getNodeText, getAllNodes(node, "IsA"))
|
||||||
self.partof = getNodeText(node, "PartOf")
|
self.partof = getNodeText(node, "PartOf")
|
||||||
self.license = map(getNodeText, getAllNodes(node, "License"))
|
self.license = map(getNodeText, getAllNodes(node, "License"))
|
||||||
|
self.icon = getNodeText(node, "Icon")
|
||||||
rtDepElts = getAllNodes(node, "RuntimeDependencies/Dependency")
|
rtDepElts = getAllNodes(node, "RuntimeDependencies/Dependency")
|
||||||
self.runtimeDeps = [DepInfo(x) for x in rtDepElts]
|
self.runtimeDeps = [DepInfo(x) for x in rtDepElts]
|
||||||
self.paths = [PathInfo(x) for x in getAllNodes(node, "Files/Path")]
|
self.paths = [PathInfo(x) for x in getAllNodes(node, "Files/Path")]
|
||||||
@@ -306,6 +311,8 @@ class PackageInfo:
|
|||||||
xml.addTextNodeUnder(node, "Name", self.name)
|
xml.addTextNodeUnder(node, "Name", self.name)
|
||||||
xml.addTextNodeUnder(node, "Summary", self.summary)
|
xml.addTextNodeUnder(node, "Summary", self.summary)
|
||||||
xml.addTextNodeUnder(node, "Description", self.description)
|
xml.addTextNodeUnder(node, "Description", self.description)
|
||||||
|
if self.icon:
|
||||||
|
xml.addTextNodeUnder(node, "Icon", self.icon)
|
||||||
for lic in self.license:
|
for lic in self.license:
|
||||||
xml.addTextNodeUnder(node, "License", lic)
|
xml.addTextNodeUnder(node, "License", lic)
|
||||||
for isa in self.isa:
|
for isa in self.isa:
|
||||||
@@ -399,6 +406,7 @@ class SpecFile(XmlFile):
|
|||||||
overrides the tags from Source. There is a more detailed
|
overrides the tags from Source. There is a more detailed
|
||||||
description in documents."""
|
description in documents."""
|
||||||
|
|
||||||
|
tmp = []
|
||||||
for pkg in self.packages:
|
for pkg in self.packages:
|
||||||
|
|
||||||
if not pkg.summary:
|
if not pkg.summary:
|
||||||
@@ -413,11 +421,19 @@ class SpecFile(XmlFile):
|
|||||||
if not pkg.license:
|
if not pkg.license:
|
||||||
pkg.license = self.source.license
|
pkg.license = self.source.license
|
||||||
|
|
||||||
|
if not pkg.icon:
|
||||||
|
pkg.icon = self.source.icon
|
||||||
|
|
||||||
|
tmp.append(pkg)
|
||||||
|
|
||||||
|
self.packages = tmp
|
||||||
|
|
||||||
def merge_tags(self):
|
def merge_tags(self):
|
||||||
"""Merge tags from Source in Packages. Some tags in Packages merged
|
"""Merge tags from Source in Packages. Some tags in Packages merged
|
||||||
with the tags from Source. There is a more detailed
|
with the tags from Source. There is a more detailed
|
||||||
description in documents."""
|
description in documents."""
|
||||||
|
|
||||||
|
tmp = []
|
||||||
for pkg in self.packages:
|
for pkg in self.packages:
|
||||||
|
|
||||||
if pkg.isa and self.source.isa:
|
if pkg.isa and self.source.isa:
|
||||||
@@ -425,6 +441,10 @@ class SpecFile(XmlFile):
|
|||||||
elif not pkg.isa and self.source.isa:
|
elif not pkg.isa and self.source.isa:
|
||||||
pkg.isa = self.source.isa
|
pkg.isa = self.source.isa
|
||||||
|
|
||||||
|
tmp.append(pkg)
|
||||||
|
|
||||||
|
self.packages = tmp
|
||||||
|
|
||||||
def has_errors(self):
|
def has_errors(self):
|
||||||
"""Return errors of the PSPEC file if there are any."""
|
"""Return errors of the PSPEC file if there are any."""
|
||||||
#FIXME: has_errors name is misleading for a function that does
|
#FIXME: has_errors name is misleading for a function that does
|
||||||
|
|||||||
Reference in New Issue
Block a user