From owner-dev-commits-ports-all@freebsd.org Tue Sep 21 04:01:03 2021 Return-Path: Delivered-To: dev-commits-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id A98A66B3C65; Tue, 21 Sep 2021 04:01:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4HD75B6hnrz4kMT; Tue, 21 Sep 2021 04:01:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B84841D251; Tue, 21 Sep 2021 04:00:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 18L40vJ9057881; Tue, 21 Sep 2021 04:00:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 18L40vf4057880; Tue, 21 Sep 2021 04:00:57 GMT (envelope-from git) Date: Tue, 21 Sep 2021 04:00:57 GMT Message-Id: <202109210400.18L40vf4057880@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Po-Chuan Hsieh Subject: git: 1abbc5aa310a - main - textproc/py-Tempita: Fix build with py-setuptools 58.0.0+ MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sunpoet X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1abbc5aa310aa58e909f856829559cf9b8ad4a3a Auto-Submitted: auto-generated X-BeenThere: dev-commits-ports-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the ports repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Sep 2021 04:01:04 -0000 The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=1abbc5aa310aa58e909f856829559cf9b8ad4a3a commit 1abbc5aa310aa58e909f856829559cf9b8ad4a3a Author: Po-Chuan Hsieh AuthorDate: 2021-09-21 03:27:46 +0000 Commit: Po-Chuan Hsieh CommitDate: 2021-09-21 03:47:26 +0000 textproc/py-Tempita: Fix build with py-setuptools 58.0.0+ ===> Configuring for py38-Tempita-0.5.2 error in Tempita setup command: use_2to3 is invalid. *** Error code 1 Stop. make: stopped in /usr/ports/textproc/py-Tempita Reference: https://github.com/pypa/setuptools/blob/main/CHANGES.rst --- textproc/py-Tempita/files/patch-setup.py | 8 ++ .../py-Tempita/files/patch-tempita-__init__.py | 156 +++++++++++++++++++++ 2 files changed, 164 insertions(+) diff --git a/textproc/py-Tempita/files/patch-setup.py b/textproc/py-Tempita/files/patch-setup.py new file mode 100644 index 000000000000..5c13cfab2754 --- /dev/null +++ b/textproc/py-Tempita/files/patch-setup.py @@ -0,0 +1,8 @@ +--- setup.py.orig 2013-12-17 04:07:27 UTC ++++ setup.py +@@ -36,5 +36,4 @@ more to learn about it. + test_suite='nose.collector', + include_package_data=True, + zip_safe=True, +- use_2to3=True, + ) diff --git a/textproc/py-Tempita/files/patch-tempita-__init__.py b/textproc/py-Tempita/files/patch-tempita-__init__.py new file mode 100644 index 000000000000..4dea7af8e12a --- /dev/null +++ b/textproc/py-Tempita/files/patch-tempita-__init__.py @@ -0,0 +1,156 @@ +--- tempita/__init__.py.orig 2013-12-17 03:59:28 UTC ++++ tempita/__init__.py +@@ -32,10 +32,10 @@ If there are syntax errors ``TemplateError`` will be r + import re + import sys + import cgi +-from urllib import quote as url_quote ++from urllib.parse import quote as url_quote + import os + import tokenize +-from cStringIO import StringIO ++from io import StringIO + from tempita._looper import looper + from tempita.compat3 import bytes, basestring_, next, is_unicode, coerce_text + +@@ -101,7 +101,7 @@ class Template(object): + delimiters = (self.default_namespace['start_braces'], + self.default_namespace['end_braces']) + else: +- assert len(delimiters) == 2 and all([isinstance(delimeter, basestring) ++ assert len(delimiters) == 2 and all([isinstance(delimeter, str) + for delimeter in delimiters]) + self.default_namespace = self.__class__.default_namespace.copy() + self.default_namespace['start_braces'] = delimiters[0] +@@ -196,7 +196,7 @@ class Template(object): + position=None, name=self.name) + templ = self.get_template(inherit_template, self) + self_ = TemplateObject(self.name) +- for name, value in defs.iteritems(): ++ for name, value in defs.items(): + setattr(self_, name, value) + self_.body = body + ns = ns.copy() +@@ -292,7 +292,7 @@ class Template(object): + try: + try: + value = eval(code, self.default_namespace, ns) +- except SyntaxError, e: ++ except SyntaxError as e: + raise SyntaxError( + 'invalid syntax in expression: %s' % code) + return value +@@ -304,12 +304,12 @@ class Template(object): + else: + arg0 = coerce_text(e) + e.args = (self._add_line_info(arg0, pos),) +- raise exc_info[0], e, exc_info[2] ++ raise exc_info[0](e).with_traceback(exc_info[2]) + + def _exec(self, code, ns, pos): + __traceback_hide__ = True + try: +- exec code in self.default_namespace, ns ++ exec(code, self.default_namespace, ns) + except: + exc_info = sys.exc_info() + e = exc_info[1] +@@ -317,7 +317,7 @@ class Template(object): + e.args = (self._add_line_info(e.args[0], pos),) + else: + e.args = (self._add_line_info(None, pos),) +- raise exc_info[0], e, exc_info[2] ++ raise exc_info[0](e).with_traceback(exc_info[2]) + + def _repr(self, value, pos): + __traceback_hide__ = True +@@ -326,7 +326,7 @@ class Template(object): + return '' + if self._unicode: + try: +- value = unicode(value) ++ value = str(value) + except UnicodeDecodeError: + value = bytes(value) + else: +@@ -339,7 +339,7 @@ class Template(object): + exc_info = sys.exc_info() + e = exc_info[1] + e.args = (self._add_line_info(e.args[0], pos),) +- raise exc_info[0], e, exc_info[2] ++ raise exc_info[0](e).with_traceback(exc_info[2]) + else: + if self._unicode and isinstance(value, bytes): + if not self.default_encoding: +@@ -348,7 +348,7 @@ class Template(object): + '(no default_encoding provided)' % value) + try: + value = value.decode(self.default_encoding) +- except UnicodeDecodeError, e: ++ except UnicodeDecodeError as e: + raise UnicodeDecodeError( + e.encoding, + e.object, +@@ -385,7 +385,7 @@ def paste_script_template_renderer(content, vars, file + class bunch(dict): + + def __init__(self, **kw): +- for name, value in kw.iteritems(): ++ for name, value in kw.items(): + setattr(self, name, value) + + def __setattr__(self, name, value): +@@ -408,7 +408,7 @@ class bunch(dict): + + def __repr__(self): + items = [ +- (k, v) for k, v in self.iteritems()] ++ (k, v) for k, v in self.items()] + items.sort() + return '<%s %s>' % ( + self.__class__.__name__, +@@ -461,7 +461,7 @@ def url(v): + + + def attr(**kw): +- kw = list(kw.iteritems()) ++ kw = list(kw.items()) + kw.sort() + parts = [] + for name, value in kw: +@@ -543,7 +543,7 @@ class TemplateDef(object): + values = {} + sig_args, var_args, var_kw, defaults = self._func_signature + extra_kw = {} +- for name, value in kw.iteritems(): ++ for name, value in kw.items(): + if not var_kw and name not in sig_args: + raise TypeError( + 'Unexpected argument %s' % name) +@@ -566,7 +566,7 @@ class TemplateDef(object): + raise TypeError( + 'Extra position arguments: %s' + % ', '.join(repr(v) for v in args)) +- for name, value_expr in defaults.iteritems(): ++ for name, value_expr in defaults.items(): + if name not in values: + values[name] = self._template._eval( + value_expr, self._ns, self._pos) +@@ -612,7 +612,7 @@ class _Empty(object): + return 'Empty' + + def __unicode__(self): +- return u'' ++ return '' + + def __iter__(self): + return iter(()) +@@ -1156,7 +1156,7 @@ def fill_command(args=None): + vars.update(os.environ) + for value in args: + if '=' not in value: +- print('Bad argument: %r' % value) ++ print(('Bad argument: %r' % value)) + sys.exit(2) + name, value = value.split('=', 1) + if name.startswith('py:'):