diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-09-23 10:22:15 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-09-23 10:22:15 +0100 |
commit | 8b4ace9c50842c5b83401ea7b179dcab940387e1 (patch) | |
tree | 230f3135ceaace633cf93e9838b185c4a6664c2e /app-doc/gimp-help | |
parent | 9ee6d97c2883d42f204a533a8bc1f4562df778fb (diff) |
gentoo resync : 23.09.2020
Diffstat (limited to 'app-doc/gimp-help')
-rw-r--r-- | app-doc/gimp-help/Manifest | 3 | ||||
-rw-r--r-- | app-doc/gimp-help/files/gimp-help-2.10.0-python3.patch | 297 | ||||
-rw-r--r-- | app-doc/gimp-help/gimp-help-2.10.0-r1.ebuild (renamed from app-doc/gimp-help/gimp-help-2.10.0.ebuild) | 8 |
3 files changed, 305 insertions, 3 deletions
diff --git a/app-doc/gimp-help/Manifest b/app-doc/gimp-help/Manifest index 9212c6883703..da4140d90a7e 100644 --- a/app-doc/gimp-help/Manifest +++ b/app-doc/gimp-help/Manifest @@ -1,5 +1,6 @@ +AUX gimp-help-2.10.0-python3.patch 13294 BLAKE2B 86ed2514e95210986e9d108e908abbf89354e3ff2ef314ad4409e42804b59728cac8f4b8eab3d1d431aaf3fc4745774fbf405ebad80c235b69e3583e47132b38 SHA512 b1932670247c793c8bd9c70045fb3f568ff99c964f2bc8ca1e7971f510512b7e476ced5c79b0bbd4e6966c9caf5c75f436926772b36996f5cf3d9e80bcc7ad76 DIST gimp-help-2.10.0.tar.bz2 187092180 BLAKE2B 29a7fbe3fcb6f3210aeda4bc514d7e0eeca05f9fabd3b9022c7ed1e5a9432876cc3bf530632648e2eb50509add4e387106d9705a1c17469e33496daec737d21b SHA512 2f6d5e7cf0c3b4960c92074ef02d51a1d089c148f6453a66e453a3084cdede280f72c6b77d35f66777adbda8aa273ec2a472fb538142e51bb263c3077eec473a DIST gimp-help-2.8.2.tar.bz2 158504580 BLAKE2B d0023a4290879f97e3365f1208427997d1facc09a7ed4ac0a274615e9eff378c9a4da0d7c5190bc24ad27c2b03d6c513003297d835562b0fa3e02685443d15e9 SHA512 3afdaa8b2f005d939d039d2e22c8306145e7b7acaca5ef89279998e87931e99d1fe607f1337f7796d667d5c6be456ba976b3c8a937c9dd6b1888d7158cfbed67 -EBUILD gimp-help-2.10.0.ebuild 652 BLAKE2B b8ef63632f6f4092693b0f6f815d8cba76a32d767bcc3ecfa6cbf6120a12ef1c264a503324d5d02d824981fa250af14494ec3a864afe6886780c5e9efe6c3a34 SHA512 2a1aed5ec78fc25fd509a384fb40ff1b39cea082a2a04c25902295274f130442deb96c971affa685fcd7266d41c53eeec3e23403482e1e1be3e39febbb1b79ff +EBUILD gimp-help-2.10.0-r1.ebuild 815 BLAKE2B be668d378c70c7e7886f303489079443d64fc98d0d12741fe587c83408c532a0c916f5fe6e02ab2488074078c9a9f03f3c3e38547187d0e8d391c64caf3ff283 SHA512 2947622745a5d351f5edcf4a790c46433dad8417292555cd7b1fd76c0447bd359faeee13d891e3f2c3cee8115038d6e919aeb8414ce3fbf6c8615848e6d453ca EBUILD gimp-help-2.8.2.ebuild 705 BLAKE2B 4215bc3e5412c04561fe446f6af0e15f5db175f9344404980df1fc7949a921d479a2821551739d9c6cfaeed7f90eb258e40d0a80c74fc8635a7a79d7a54463b4 SHA512 d401d0ed37534661e4704f17afca367e972118895a5e46d7a020ee8b778648ee6311209dff153143be47afa89d473694a7faf82359cca369aeab980e88126c04 MISC metadata.xml 370 BLAKE2B 18f0dfd3b6fb8f284f888dbcd30d3d4ddce8753e58ef3e92ba0803bd6dadd36962f2f6e57dcd6ccebc547bf43b8972bdaf27e5817c77307172fdb835fe2d9c9e SHA512 9ad9dbdfc25d5a59c0129f1f83615d73bcb9026cc0411a71e9987bca46389fa5f3905a72d22ddac319b1838b770cc5755a2ec312a05db1752e10be5cca08ea38 diff --git a/app-doc/gimp-help/files/gimp-help-2.10.0-python3.patch b/app-doc/gimp-help/files/gimp-help-2.10.0-python3.patch new file mode 100644 index 000000000000..e42214a0f82b --- /dev/null +++ b/app-doc/gimp-help/files/gimp-help-2.10.0-python3.patch @@ -0,0 +1,297 @@ +diff -urNp a/tools/xml2po/__init__.py b/tools/xml2po/__init__.py +--- a/tools/xml2po/__init__.py 2019-11-28 11:45:00.889048989 +0100 ++++ b/tools/xml2po/__init__.py 2020-01-06 13:24:24.715787902 +0100 +@@ -166,7 +166,7 @@ class XMLDocument(object): + elif node.isText(): + if node.isBlankNode(): + if self.app.options.get('expand_entities') or \ +- (not (node.prev and not node.prev.isBlankNode() and node.next and not node.next.isBlankNode()) ): ++ (not (node.prev and not node.prev.isBlankNode() and node.nextElementSibling() and not node.next.isBlankNode()) ): + #print >>sys.stderr, "BLANK" + node.setContent('') + else: +@@ -200,7 +200,7 @@ class XMLDocument(object): + tree = ctxt.doc() + newnode = tree.getRootElement() + except: +- print >> sys.stderr, """Error while normalizing string as XML:\n"%s"\n""" % (text) ++ print("""Error while normalizing string as XML:\n"%s"\n""" % (text), file=sys.stderr) + return text + + self.normalizeNode(newnode) +@@ -259,7 +259,7 @@ class XMLDocument(object): + if not self.expand_entities: + result += '&' + child.name + ';' + else: +- result += child.content.decode('utf-8') ++ result += child.content + else: + result += self.myAttributeSerialize(child) + child = child.next +@@ -326,7 +326,7 @@ class XMLDocument(object): + pass + + content = '<%s>%s</%s>' % (starttag, text, endtag) +- tmp = tmp + content.encode('utf-8') ++ tmp = tmp + content + + newnode = None + try: +@@ -338,7 +338,7 @@ class XMLDocument(object): + pass + + if not newnode: +- print >> sys.stderr, """Error while parsing translation as XML:\n"%s"\n""" % (text.encode('utf-8')) ++ print("""Error while parsing translation as XML:\n"%s"\n""" % (text), file=sys.stderr) + return + + newelem = newnode.getRootElement() +@@ -354,7 +354,7 @@ class XMLDocument(object): + copy = newelem.copyNodeList() + next = node.next + node.replaceNode(newelem.copyNodeList()) +- node.next = next ++ node.__next__ = next + + else: + # In practice, this happens with tags such as "<para> </para>" (only whitespace in between) +@@ -406,7 +406,7 @@ class XMLDocument(object): + translation = self.app.getTranslation(outtxt) # unicode or None + if translation is not None: + self.replaceAttributeContentsWithText(attr, +- translation.encode('utf-8')) ++ translation) + else: + self.app.msg.outputMessage(outtxt, node.lineNo(), "", spacepreserve=False, + tag = node.name + ":" + attr.name) +@@ -447,14 +447,14 @@ class XMLDocument(object): + norm_outtxt = self.normalizeString(outtxt, self.app.isSpacePreserveNode(node)) + translation = self.app.getTranslation(norm_outtxt) + else: +- translation = outtxt.decode('utf-8') ++ translation = outtxt + + starttag = self.startTagForNode(node) + endtag = self.endTagForNode(node) + + worth = self.worthOutputting(node) + if not translation: +- translation = outtxt.decode('utf-8') ++ translation = outtxt + if worth and self.app.options.get('mark_untranslated'): + node.setLang('C') + +@@ -463,7 +463,7 @@ class XMLDocument(object): + # repl[0] may contain translated attributes with + # non-ASCII chars, so implicit conversion to <str> may fail + replacement = '<%s>%s</%s>' % \ +- (repl[0].decode('utf-8'), repl[3], repl[2]) ++ (repl[0], repl[3], repl[2]) + translation = translation.replace('<placeholder-%d/>' % (i+1), replacement) + + if worth: +@@ -542,7 +542,7 @@ class Main(object): + elif output == '-': + self.out = sys.stdout + else: +- self.out = file(output, 'w') ++ self.out = open(output, 'w') + + def load_mode(self, modename): + try: +@@ -565,7 +565,7 @@ class Main(object): + try: + doc = XMLDocument(xmlfile, self) + except Exception as e: +- print >> sys.stderr, "Unable to parse XML file '%s': %s" % (xmlfile, str(e)) ++ print("Unable to parse XML file '%s': %s" % (xmlfile, str(e)), file=sys.stderr) + sys.exit(1) + self.current_mode.preProcessXml(doc.doc, self.msg) + doc.generate_messages() +@@ -578,13 +578,13 @@ class Main(object): + try: + doc = XMLDocument(xmlfile, self) + except Exception as e: +- print >> sys.stderr, str(e) ++ print(str(e), file=sys.stderr) + sys.exit(1) + + try: + mfile = open(mofile, "rb") + except: +- print >> sys.stderr, "Can't open MO file '%s'." % (mofile) ++ print("Can't open MO file '%s'." % (mofile), file=sys.stderr) + self.gt = gettext.GNUTranslations(mfile) + self.gt.add_fallback(NoneTranslations()) + # Has preProcessXml use cases for merge? +@@ -607,7 +607,7 @@ class Main(object): + try: + doc = XMLDocument(xmlfile, self) + except Exception as e: +- print >> sys.stderr, str(e) ++ print(str(e), file=sys.stderr) + sys.exit(1) + doc.generate_messages() + +@@ -615,7 +615,7 @@ class Main(object): + try: + doc = XMLDocument(origxml, self) + except Exception as e: +- print >> sys.stderr, str(e) ++ print(str(e), file=sys.stderr) + sys.exit(1) + doc.generate_messages() + self.output_po() +@@ -646,11 +646,11 @@ class Main(object): + + text should be a string to look for. + """ +- #print >>sys.stderr,"getTranslation('%s')" % (text.encode('utf-8')) ++ #print >>sys.stderr,"getTranslation('%s')" % (text) + if not text or text.strip() == '': + return text + if self.gt: +- res = self.gt.ugettext(text.decode('utf-8')) ++ res = self.gt.gettext(text) + return res + + return text +diff -urNp a/tools/xml2po/modes/docbook.py b/tools/xml2po/modes/docbook.py +--- a/tools/xml2po/modes/docbook.py 2019-11-28 11:45:00.889048989 +0100 ++++ b/tools/xml2po/modes/docbook.py 2020-01-06 13:10:18.324679751 +0100 +@@ -43,7 +43,7 @@ try: + except ImportError: + from md5 import new as md5_new + +-from basic import basicXmlMode ++from .basic import basicXmlMode + + class docbookXmlMode(basicXmlMode): + """Class for special handling of DocBook document types. +@@ -131,7 +131,7 @@ class docbookXmlMode(basicXmlMode): + hash = self._md5_for_file(fullpath) + else: + hash = "THIS FILE DOESN'T EXIST" +- print >>sys.stderr, "Warning: image file '%s' not found." % fullpath ++ print("Warning: image file '%s' not found." % fullpath, file=sys.stderr) + + msg.outputMessage("@@image: '%s'; md5=%s" % (attr, hash), node.lineNo(), + "When image changes, this message will be marked fuzzy or untranslated for you.\n"+ +@@ -184,7 +184,7 @@ class docbookXmlMode(basicXmlMode): + else: + ai.addChild(copy) + if match.group(3): +- copy.newChild(None, "year", match.group(3).encode('utf-8')) ++ copy.newChild(None, "year", match.group(3)) + if match.group(1) and match.group(2): + holder = match.group(1)+"(%s)" % match.group(2) + elif match.group(1): +@@ -193,15 +193,15 @@ class docbookXmlMode(basicXmlMode): + holder = match.group(2) + else: + holder = "???" +- copy.newChild(None, "holder", holder.encode('utf-8')) ++ copy.newChild(None, "holder", holder) + + # Perform some tests when ran standalone + if __name__ == '__main__': + test = docbookXmlMode() +- print "Ignored tags : " + repr(test.getIgnoredTags()) +- print "Final tags : " + repr(test.getFinalTags()) +- print "Space-preserve tags: " + repr(test.getSpacePreserveTags()) ++ print("Ignored tags : " + repr(test.getIgnoredTags())) ++ print("Final tags : " + repr(test.getFinalTags())) ++ print("Space-preserve tags: " + repr(test.getSpacePreserveTags())) + +- print "Credits from string: '%s'" % test.getStringForTranslators() +- print "Explanation for credits:\n\t'%s'" % test.getCommentForTranslators() ++ print("Credits from string: '%s'" % test.getStringForTranslators()) ++ print("Explanation for credits:\n\t'%s'" % test.getCommentForTranslators()) + +diff -urNp a/tools/xml2po/modes/gimphelp.py b/tools/xml2po/modes/gimphelp.py +--- a/tools/xml2po/modes/gimphelp.py 2019-11-28 11:45:00.889048989 +0100 ++++ b/tools/xml2po/modes/gimphelp.py 2020-01-06 11:59:17.387855373 +0100 +@@ -31,7 +31,7 @@ try: + except ImportError: + from md5 import new as md5_new + +-from docbook import docbookXmlMode ++from .docbook import docbookXmlMode + + class gimphelpXmlMode(docbookXmlMode): + """Class for special handling of gimp-help DocBook document types. +@@ -91,10 +91,10 @@ class gimphelpXmlMode(docbookXmlMode): + # Perform some tests when ran standalone + if __name__ == '__main__': + test = gimphelpXmlMode() +- print "Ignored tags : " + repr(test.getIgnoredTags()) +- print "Final tags : " + repr(test.getFinalTags()) +- print "Space-preserve tags: " + repr(test.getSpacePreserveTags()) ++ print("Ignored tags : " + repr(test.getIgnoredTags())) ++ print("Final tags : " + repr(test.getFinalTags())) ++ print("Space-preserve tags: " + repr(test.getSpacePreserveTags())) + +- print "Credits from string: '%s'" % test.getStringForTranslators() +- print "Explanation for credits:\n\t'%s'" % test.getCommentForTranslators() ++ print("Credits from string: '%s'" % test.getStringForTranslators()) ++ print("Explanation for credits:\n\t'%s'" % test.getCommentForTranslators()) + +diff -urNp a/tools/xml2po.py b/tools/xml2po.py +--- a/tools/xml2po.py 2019-11-28 11:45:00.889048989 +0100 ++++ b/tools/xml2po.py 2020-01-06 11:59:17.387855373 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python2 ++#!/usr/bin/env python3 + # -*- encoding: utf-8 -*- + # Copyright (c) 2004, 2005, 2006 Danilo Ĺ egan <danilo@gnome.org>. + # Copyright (c) 2009 Claude Paroz <claude@2xlibre.net>. +@@ -41,9 +41,9 @@ NULL_STRING = '/dev/null' + if not os.path.exists('/dev/null'): NULL_STRING = 'NUL' + + def usage (with_help = False): +- print >> sys.stderr, "Usage: %s [OPTIONS] [XMLFILE]..." % (sys.argv[0]) ++ print("Usage: %s [OPTIONS] [XMLFILE]..." % (sys.argv[0]), file=sys.stderr) + if with_help: +- print >> sys.stderr, """ ++ print(""" + OPTIONS may be some of: + -a --automatic-tags Automatically decides if tags are to be considered + "final" or not +@@ -72,7 +72,7 @@ EXAMPLES: + using -p option for each XML file: + %(command)s -p de.po chapter1.xml > chapter1.de.xml + %(command)s -p de.po chapter2.xml > chapter2.de.xml +-""" % {'command': sys.argv[0]} ++""" % {'command': sys.argv[0]}, file=sys.stderr) + + + def main(argv): +@@ -148,7 +148,7 @@ def main(argv): + sys.exit(0) + + if operation == 'update' and output != "-": +- print >> sys.stderr, "Option '-o' is not yet supported when updating translations directly. Ignoring this option." ++ print("Option '-o' is not yet supported when updating translations directly. Ignoring this option.", file=sys.stderr) + + # Treat remaining arguments as XML files + filenames = [] +@@ -158,16 +158,16 @@ def main(argv): + try: + xml2po_main = Main(default_mode, operation, output, options) + except IOError: +- print >> sys.stderr, "Error: cannot open file %s for writing." % (output) ++ print("Error: cannot open file %s for writing." % (output), file=sys.stderr) + sys.exit(5) + + if operation == 'merge': + if len(filenames) > 1: +- print >> sys.stderr, "Error: You can merge translations with only one XML file at a time." ++ print("Error: You can merge translations with only one XML file at a time.", file=sys.stderr) + sys.exit(2) + + if not mofile: +- print >> sys.stderr, "Error: You must specify MO file when merging translations." ++ print("Error: You must specify MO file when merging translations.", file=sys.stderr) + sys.exit(3) + + xml2po_main.merge(mofile, filenames[0]) diff --git a/app-doc/gimp-help/gimp-help-2.10.0.ebuild b/app-doc/gimp-help/gimp-help-2.10.0-r1.ebuild index 5180a87afe25..76ecfd70d852 100644 --- a/app-doc/gimp-help/gimp-help-2.10.0.ebuild +++ b/app-doc/gimp-help/gimp-help-2.10.0-r1.ebuild @@ -3,7 +3,7 @@ EAPI=7 -PYTHON_COMPAT=( python2_7 ) +PYTHON_COMPAT=( python3_{6,7,8,9} ) inherit python-any-r1 DESCRIPTION="GNU Image Manipulation Program help files" @@ -12,7 +12,7 @@ SRC_URI="mirror://gimp/help/${P}.tar.bz2" LICENSE="FDL-1.2" SLOT="2" -KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 sparc x86" IUSE="" BDEPEND="${PYTHON_DEPS} @@ -23,6 +23,10 @@ DEPEND="$(python_gen_any_dep 'dev-libs/libxml2[python,${PYTHON_USEDEP}]') dev-libs/libxslt " +# Adds python3 build support, bug 725940 +# patch is from https://gitlab.gnome.org/GNOME/gimp-help/-/issues/201 +PATCHES=( "${FILESDIR}/${P}-python3.patch" ) + python_check_deps() { has_version "dev-libs/libxml2[${PYTHON_USEDEP}]" } |