Date: Sat, 11 Jan 2025 13:22:10 GMT From: Ruslan Makhmatkhanov <rm@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: c46f669958ee - main - zope: Remove leaf zope ports that have no sense in absence of zope itself Message-ID: <202501111322.50BDMAST061516@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by rm: URL: https://cgit.FreeBSD.org/ports/commit/?id=c46f669958eedea1755ce692fd664eeee2f7d720 commit c46f669958eedea1755ce692fd664eeee2f7d720 Author: Ruslan Makhmatkhanov <rm@FreeBSD.org> AuthorDate: 2025-01-11 13:21:48 +0000 Commit: Ruslan Makhmatkhanov <rm@FreeBSD.org> CommitDate: 2025-01-11 13:21:48 +0000 zope: Remove leaf zope ports that have no sense in absence of zope itself --- MOVED | 5 + devel/Makefile | 2 - devel/py-ExtensionClass/Makefile | 18 - devel/py-ExtensionClass/distinfo | 3 - devel/py-ExtensionClass/pkg-descr | 2 - devel/py-repoze.sphinx.autointerface/Makefile | 19 - devel/py-repoze.sphinx.autointerface/distinfo | 2 - devel/py-repoze.sphinx.autointerface/pkg-descr | 3 - mail/Makefile | 1 - mail/py-Products.SecureMailHost/Makefile | 18 - mail/py-Products.SecureMailHost/distinfo | 2 - mail/py-Products.SecureMailHost/files/patch-2to3 | 165 -------- mail/py-Products.SecureMailHost/pkg-descr | 2 - security/Makefile | 1 - security/py-RestrictedPython/Makefile | 18 - security/py-RestrictedPython/distinfo | 2 - security/py-RestrictedPython/files/patch-2to3 | 469 ----------------------- security/py-RestrictedPython/pkg-descr | 2 - sysutils/Makefile | 1 - sysutils/py-zdaemon/Makefile | 21 - sysutils/py-zdaemon/distinfo | 2 - sysutils/py-zdaemon/pkg-descr | 6 - 22 files changed, 5 insertions(+), 759 deletions(-) diff --git a/MOVED b/MOVED index aad3bb6a23a0..2d973f4a8cca 100644 --- a/MOVED +++ b/MOVED @@ -4006,3 +4006,8 @@ devel/py-Products.PloneLanguageTool||2025-01-11|Remove leaf zope ports that have devel/py-collective.monkeypatcher||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself devel/py-diazo||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself devel/py-repoze.xmliter||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself +mail/py-Products.SecureMailHost||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself +devel/py-repoze.sphinx.autointerface||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself +devel/py-ExtensionClass||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself +security/py-RestrictedPython||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself +sysutils/py-zdaemon||2025-01-11|Remove leaf zope ports that have no sense in absence of zope itself diff --git a/devel/Makefile b/devel/Makefile index 86058c0787fd..c6abcdda0f61 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -4342,7 +4342,6 @@ SUBDIR += py-BTrees SUBDIR += py-DateTime SUBDIR += py-Dumper - SUBDIR += py-ExtensionClass SUBDIR += py-Faker SUBDIR += py-IBMQuantumExperience SUBDIR += py-Jinja2 @@ -5805,7 +5804,6 @@ SUBDIR += py-regress SUBDIR += py-remote-pdb SUBDIR += py-repoze.lru - SUBDIR += py-repoze.sphinx.autointerface SUBDIR += py-repoze.tm2 SUBDIR += py-repoze.who SUBDIR += py-represent diff --git a/devel/py-ExtensionClass/Makefile b/devel/py-ExtensionClass/Makefile deleted file mode 100644 index 45eb7235a4fd..000000000000 --- a/devel/py-ExtensionClass/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -PORTNAME= ExtensionClass -PORTVERSION= 5.1 -CATEGORIES= devel python zope -MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -DIST_SUBDIR= zope - -MAINTAINER= zope@FreeBSD.org -COMMENT= Metaclass for subclassable extension types -WWW= https://pypi.org/project/ExtensionClass/ - -LICENSE= ZPL21 -LICENSE_FILE= ${WRKSRC}/LICENSE.txt - -USES= python -USE_PYTHON= autoplist distutils - -.include <bsd.port.mk> diff --git a/devel/py-ExtensionClass/distinfo b/devel/py-ExtensionClass/distinfo deleted file mode 100644 index ee3155cb6f7d..000000000000 --- a/devel/py-ExtensionClass/distinfo +++ /dev/null @@ -1,3 +0,0 @@ -TIMESTAMP = 1706485929 -SHA256 (zope/ExtensionClass-5.1.tar.gz) = 21121c5e12721ddf8fb7af90c4199ef46ea5045e9ffa98d9e20cd7c98025e3da -SIZE (zope/ExtensionClass-5.1.tar.gz) = 36053 diff --git a/devel/py-ExtensionClass/pkg-descr b/devel/py-ExtensionClass/pkg-descr deleted file mode 100644 index 71381879b73c..000000000000 --- a/devel/py-ExtensionClass/pkg-descr +++ /dev/null @@ -1,2 +0,0 @@ -This package provides a metaclass that allows classes implemented -in extension modules to be subclassed in Python. diff --git a/devel/py-repoze.sphinx.autointerface/Makefile b/devel/py-repoze.sphinx.autointerface/Makefile deleted file mode 100644 index d3c0a4ed99ed..000000000000 --- a/devel/py-repoze.sphinx.autointerface/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -PORTNAME= repoze.sphinx.autointerface -PORTVERSION= 0.8 -CATEGORIES= devel python -MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} - -MAINTAINER= zope@FreeBSD.org -COMMENT= Auto-generates API docs from Zope interfaces -WWW= http://www.repoze.org - -LICENSE= BSD4CLAUSE -LICENSE_FILE= ${WRKSRC}/LICENSE.txt - -USES= python -USE_PYTHON= autoplist distutils - -NO_ARCH= yes - -.include <bsd.port.mk> diff --git a/devel/py-repoze.sphinx.autointerface/distinfo b/devel/py-repoze.sphinx.autointerface/distinfo deleted file mode 100644 index 1646cae9bdb3..000000000000 --- a/devel/py-repoze.sphinx.autointerface/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (repoze.sphinx.autointerface-0.8.tar.gz) = 8ef0383276ab722efb1e4a6523726262058dfd82615ccf7e5004aee3fe8ecc23 -SIZE (repoze.sphinx.autointerface-0.8.tar.gz) = 8987 diff --git a/devel/py-repoze.sphinx.autointerface/pkg-descr b/devel/py-repoze.sphinx.autointerface/pkg-descr deleted file mode 100644 index ff98eebe6368..000000000000 --- a/devel/py-repoze.sphinx.autointerface/pkg-descr +++ /dev/null @@ -1,3 +0,0 @@ -This package defines an extension for the Sphinx documentation system. -The extension allows generation of API documentation by introspection of -zope.interface instances in code. diff --git a/mail/Makefile b/mail/Makefile index ba7dfee1497d..7fc7b579932a 100644 --- a/mail/Makefile +++ b/mail/Makefile @@ -503,7 +503,6 @@ SUBDIR += procmail SUBDIR += procmail-bgrb SUBDIR += proxsmtp - SUBDIR += py-Products.SecureMailHost SUBDIR += py-afew SUBDIR += py-aiosmtpd SUBDIR += py-alot diff --git a/mail/py-Products.SecureMailHost/Makefile b/mail/py-Products.SecureMailHost/Makefile deleted file mode 100644 index 20f0f166c114..000000000000 --- a/mail/py-Products.SecureMailHost/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -PORTNAME= Products.SecureMailHost -PORTVERSION= 1.1.2 -PORTREVISION= 1 -CATEGORIES= mail python zope -MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -DIST_SUBDIR= zope - -MAINTAINER= zope@FreeBSD.org -COMMENT= Reimplementation of the standard Zope2 MailHost -WWW= https://pypi.org/project/Products.SecureMailHost/ - -LICENSE= ZPL21 - -USES= python zip -USE_PYTHON= distutils autoplist - -.include <bsd.port.mk> diff --git a/mail/py-Products.SecureMailHost/distinfo b/mail/py-Products.SecureMailHost/distinfo deleted file mode 100644 index 132791dc3bd2..000000000000 --- a/mail/py-Products.SecureMailHost/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (zope/Products.SecureMailHost-1.1.2.zip) = 5c46b81c06e6555cf4c3ee9facbbab1d5cc75bc7b435b7db9f5bc0862ca7dae7 -SIZE (zope/Products.SecureMailHost-1.1.2.zip) = 29352 diff --git a/mail/py-Products.SecureMailHost/files/patch-2to3 b/mail/py-Products.SecureMailHost/files/patch-2to3 deleted file mode 100644 index 8f5b763bd1e4..000000000000 --- a/mail/py-Products.SecureMailHost/files/patch-2to3 +++ /dev/null @@ -1,165 +0,0 @@ ---- Products/SecureMailHost/SecureMailHost.py.orig 2009-09-05 08:33:50 UTC -+++ Products/SecureMailHost/SecureMailHost.py -@@ -16,7 +16,7 @@ - $Id: SecureMailHost.py 96773 2009-09-05 14:33:50Z hannosch $ - """ - --from config import BAD_HEADERS -+from .config import BAD_HEADERS - from copy import deepcopy - - import email.Message -@@ -201,10 +201,10 @@ class SecureMailBase(MailBase): - if addr: - result = self.validateEmailAddresses(addr) - if not result: -- raise MailHostError, 'Invalid email address: %s' % addr -+ raise MailHostError('Invalid email address: %s' % addr) - result = self.validateSingleEmailAddress(mfrom) - if not result: -- raise MailHostError, 'Invalid email address: %s' % mfrom -+ raise MailHostError('Invalid email address: %s' % mfrom) - - # create message - if isinstance(message, email.Message.Message): -@@ -212,7 +212,7 @@ class SecureMailBase(MailBase): - # change the message - msg = deepcopy(message) - else: -- if isinstance(message, unicode): -+ if isinstance(message, str): - message = message.encode(charset) - msg = email.MIMEText.MIMEText(message, subtype, charset) - -@@ -228,7 +228,7 @@ class SecureMailBase(MailBase): - - for bad in BAD_HEADERS: - if bad in kwargs: -- raise MailHostError, 'Header %s is forbidden' % bad -+ raise MailHostError('Header %s is forbidden' % bad) - self.setHeaderOf(msg, **kwargs) - - # we have to pass *all* recipient email addresses to the -@@ -251,7 +251,7 @@ class SecureMailBase(MailBase): - - All occurences of the key are deleted first! - """ -- for key, val in kwargs.items(): -+ for key, val in list(kwargs.items()): - del msg[key] # save - email.Message won't raise a KeyError - if skipEmpty and not val: - continue -@@ -293,7 +293,7 @@ class SecureMailBase(MailBase): - # stage 2: get a list of address strings using email.formataddr - addresses = [] - for addr in addr_list: -- if isinstance(addr, basestring): -+ if isinstance(addr, str): - addresses.append(email.Utils.formataddr(('', addr))) - else: - if len(addr) != 2: -@@ -311,7 +311,7 @@ class SecureMailBase(MailBase): - """Lower-level function to validate a single normalized email - address, see validateEmailAddress - """ -- if not isinstance(address, basestring): -+ if not isinstance(address, str): - return False - - sub = EMAIL_CUTOFF_RE.match(address); -@@ -329,7 +329,7 @@ class SecureMailBase(MailBase): - def validateSingleEmailAddress(self, address): - """Validate a single email address, see also validateEmailAddresses - """ -- if not isinstance(address, basestring): -+ if not isinstance(address, str): - return False - - sub = EMAIL_CUTOFF_RE.match(address); -@@ -353,7 +353,7 @@ class SecureMailBase(MailBase): - """Validate a list of possibly several email addresses, see - also validateSingleEmailAddress - """ -- if not isinstance(addresses, basestring): -+ if not isinstance(addresses, str): - return False - - sub = EMAIL_CUTOFF_RE.match(addresses); ---- Products/SecureMailHost/tests/common.py.orig 2004-07-18 15:21:52 UTC -+++ Products/SecureMailHost/tests/common.py -@@ -2,12 +2,6 @@ from Testing import ZopeTestCase - - from Products.SecureMailHost.SecureMailHost import SecureMailBase - --try: -- True --except NameError: -- True=1 -- False=0 -- - ZopeTestCase.installProduct('MailHost', quiet=1) - ZopeTestCase.installProduct('PageTemplates', quiet=1) - ZopeTestCase.installProduct('PythonScripts', quiet=1) ---- Products/SecureMailHost/tests/framework.py.orig 2004-05-16 01:36:28 UTC -+++ Products/SecureMailHost/tests/framework.py -@@ -52,7 +52,7 @@ if __INSTANCE_HOME.endswith(os.sep): - - # Find and import the Testing package - # --if not sys.modules.has_key('Testing'): -+if 'Testing' not in sys.modules: - p0 = sys.path[0] - if p0 and __name__ == '__main__': - os.chdir(p0) -@@ -66,12 +66,12 @@ if not sys.modules.has_key('Testing'): - break - p, d = s and ('','') or os.path.split(p) - else: -- print 'Unable to locate Testing package.', -- print 'You might need to set SOFTWARE_HOME.' -+ print('Unable to locate Testing package.', end=' ') -+ print('You might need to set SOFTWARE_HOME.') - sys.exit(1) - - import Testing, unittest --execfile(os.path.join(os.path.dirname(Testing.__file__), 'common.py')) -+exec(compile(open(os.path.join(os.path.dirname(Testing.__file__), 'common.py'), "rb").read(), os.path.join(os.path.dirname(Testing.__file__), 'common.py'), 'exec')) - - # Include ZopeTestCase support - # -@@ -80,8 +80,8 @@ if 1: # Create a new scope - p = os.path.join(os.path.dirname(Testing.__file__), 'ZopeTestCase') - - if not os.path.isdir(p): -- print 'Unable to locate ZopeTestCase package.', -- print 'You might need to install ZopeTestCase.' -+ print('Unable to locate ZopeTestCase package.', end=' ') -+ print('You might need to install ZopeTestCase.') - sys.exit(1) - - ztc_common = 'ztc_common.py' -@@ -89,19 +89,19 @@ if 1: # Create a new scope - - f = 0 - if os.path.exists(ztc_common_global): -- execfile(ztc_common_global) -+ exec(compile(open(ztc_common_global, "rb").read(), ztc_common_global, 'exec')) - f = 1 - if os.path.exists(ztc_common): -- execfile(ztc_common) -+ exec(compile(open(ztc_common, "rb").read(), ztc_common, 'exec')) - f = 1 - - if not f: -- print 'Unable to locate %s.' % ztc_common -+ print('Unable to locate %s.' % ztc_common) - sys.exit(1) - - # Debug - # --print 'SOFTWARE_HOME: %s' % os.environ.get('SOFTWARE_HOME', 'Not set') --print 'INSTANCE_HOME: %s' % os.environ.get('INSTANCE_HOME', 'Not set') -+print('SOFTWARE_HOME: %s' % os.environ.get('SOFTWARE_HOME', 'Not set')) -+print('INSTANCE_HOME: %s' % os.environ.get('INSTANCE_HOME', 'Not set')) - sys.stdout.flush() - diff --git a/mail/py-Products.SecureMailHost/pkg-descr b/mail/py-Products.SecureMailHost/pkg-descr deleted file mode 100644 index 9d648d27f1f4..000000000000 --- a/mail/py-Products.SecureMailHost/pkg-descr +++ /dev/null @@ -1,2 +0,0 @@ -SecureMailHost is a reimplementation of the standard Zope2 MailHost -with some security and usability enhancements. diff --git a/security/Makefile b/security/Makefile index 5b4e83c4d4cd..1e190d10e886 100644 --- a/security/Makefile +++ b/security/Makefile @@ -873,7 +873,6 @@ SUBDIR += pwauth SUBDIR += pwman SUBDIR += pwned-check - SUBDIR += py-RestrictedPython SUBDIR += py-SecretStorage SUBDIR += py-YubiOTP SUBDIR += py-acme diff --git a/security/py-RestrictedPython/Makefile b/security/py-RestrictedPython/Makefile deleted file mode 100644 index beca681e7a2c..000000000000 --- a/security/py-RestrictedPython/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -PORTNAME= RestrictedPython -PORTVERSION= 3.6.0 -PORTREVISION= 2 -CATEGORIES= security python zope -MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} -DIST_SUBDIR= zope - -MAINTAINER= zope@FreeBSD.org -COMMENT= Restricted execution environment for Python -WWW= https://pypi.org/project/RestrictedPython/ - -LICENSE= ZPL21 - -USES= python zip -USE_PYTHON= distutils autoplist - -.include <bsd.port.mk> diff --git a/security/py-RestrictedPython/distinfo b/security/py-RestrictedPython/distinfo deleted file mode 100644 index 83054ff824c1..000000000000 --- a/security/py-RestrictedPython/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (zope/RestrictedPython-3.6.0.zip) = 0edb2579b4174282bee3997abc6316d122c7ca6dcd02f4423352213cde571434 -SIZE (zope/RestrictedPython-3.6.0.zip) = 56739 diff --git a/security/py-RestrictedPython/files/patch-2to3 b/security/py-RestrictedPython/files/patch-2to3 deleted file mode 100644 index 931d63b3254c..000000000000 --- a/security/py-RestrictedPython/files/patch-2to3 +++ /dev/null @@ -1,469 +0,0 @@ ---- src/RestrictedPython/Eval.py.orig 2010-07-09 04:28:54 UTC -+++ src/RestrictedPython/Eval.py -@@ -60,10 +60,10 @@ class RestrictionCapableEval: - self.expr, '<string>') - if PROFILE: - end = clock() -- print 'prepRestrictedCode: %d ms for %s' % ( -- (end - start) * 1000, `self.expr`) -+ print('prepRestrictedCode: %d ms for %s' % ( -+ (end - start) * 1000, repr(self.expr))) - if err: -- raise SyntaxError, err[0] -+ raise SyntaxError(err[0]) - self.used = tuple(used.keys()) - self.rcode = co - ---- src/RestrictedPython/Guards.py.orig 2010-07-09 04:07:16 UTC -+++ src/RestrictedPython/Guards.py -@@ -98,7 +98,7 @@ def _write_wrapper(): - try: - f = getattr(self.ob, secattr) - except AttributeError: -- raise TypeError, error_msg -+ raise TypeError(error_msg) - f(*args) - return handler - class Wrapper: ---- src/RestrictedPython/Limits.py.orig 2010-07-07 14:42:56 UTC -+++ src/RestrictedPython/Limits.py -@@ -25,22 +25,22 @@ def limited_range(iFirst, *args): - elif len(args) == 2: - iStart, iEnd, iStep = iFirst, args[0], args[1] - else: -- raise AttributeError, 'range() requires 1-3 int arguments' -- if iStep == 0: raise ValueError, 'zero step for range()' -+ raise AttributeError('range() requires 1-3 int arguments') -+ if iStep == 0: raise ValueError('zero step for range()') - iLen = int((iEnd - iStart) / iStep) - if iLen < 0: iLen = 0 -- if iLen >= RANGELIMIT: raise ValueError, 'range() too large' -- return range(iStart, iEnd, iStep) -+ if iLen >= RANGELIMIT: raise ValueError('range() too large') -+ return list(range(iStart, iEnd, iStep)) - limited_builtins['range'] = limited_range - - def limited_list(seq): - if isinstance(seq, str): -- raise TypeError, 'cannot convert string to list' -+ raise TypeError('cannot convert string to list') - return list(seq) - limited_builtins['list'] = limited_list - - def limited_tuple(seq): - if isinstance(seq, str): -- raise TypeError, 'cannot convert string to tuple' -+ raise TypeError('cannot convert string to tuple') - return tuple(seq) - limited_builtins['tuple'] = limited_tuple ---- src/RestrictedPython/RCompile.py.orig 2010-07-07 14:42:56 UTC -+++ src/RestrictedPython/RCompile.py -@@ -20,12 +20,12 @@ from compiler import ast, parse, misc, syntax, pycodeg - from compiler.pycodegen import AbstractCompileMode, Expression, \ - Interactive, Module, ModuleCodeGenerator, FunctionCodeGenerator, findOp - --import MutatingWalker --from RestrictionMutator import RestrictionMutator -+from . import MutatingWalker -+from .RestrictionMutator import RestrictionMutator - - - def niceParse(source, filename, mode): -- if isinstance(source, unicode): -+ if isinstance(source, str): - # Use the utf-8-sig BOM so the compiler - # detects this as a UTF-8 encoded string. - source = '\xef\xbb\xbf' + source.encode('utf-8') -@@ -58,7 +58,7 @@ class RestrictedCompileMode(AbstractCompileMode): - tree = self.parse() - MutatingWalker.walk(tree, self.rm) - if self.rm.errors: -- raise SyntaxError, self.rm.errors[0] -+ raise SyntaxError(self.rm.errors[0]) - misc.set_filename(self.filename, tree) - syntax.check(tree) - return tree -@@ -72,7 +72,7 @@ class RestrictedCompileMode(AbstractCompileMode): - def compileAndTuplize(gen): - try: - gen.compile() -- except SyntaxError, v: -+ except SyntaxError as v: - return None, (str(v),), gen.rm.warnings, gen.rm.used_names - return gen.getCode(), (), gen.rm.warnings, gen.rm.used_names - ---- src/RestrictedPython/tests/before_and_after.py.orig 2010-07-09 04:29:10 UTC -+++ src/RestrictedPython/tests/before_and_after.py -@@ -77,11 +77,11 @@ def nested_list_comprehension_after(): - # print - - def simple_print_before(): -- print "foo" -+ print("foo") - - def simple_print_after(): - _print = _print_() -- print >> _print, "foo" -+ print("foo", file=_print) - - # getitem - -@@ -117,13 +117,13 @@ def simple_delitem_after(): - - def function_with_print_before(): - def foo(): -- print "foo" -+ print("foo") - return printed - - def function_with_print_after(): - def foo(): - _print = _print_() -- print >> _print, "foo" -+ print("foo", file=_print) - return _print() - - def function_with_getattr_before(): ---- src/RestrictedPython/tests/class.py.orig 2010-07-07 14:42:56 UTC -+++ src/RestrictedPython/tests/class.py -@@ -10,4 +10,4 @@ x = MyClass() - x.set(12) - x.set(x.get() + 1) - if x.get() != 13: -- raise AssertionError, "expected 13, got %d" % x.get() -+ raise AssertionError("expected 13, got %d" % x.get()) ---- src/RestrictedPython/tests/restricted_module.py.orig 2010-07-07 14:42:56 UTC -+++ src/RestrictedPython/tests/restricted_module.py -@@ -1,42 +1,43 @@ - import sys -+from functools import reduce - - def print0(): -- print 'Hello, world!', -+ print('Hello, world!', end=' ') - return printed - - def print1(): -- print 'Hello,', -- print 'world!', -+ print('Hello,', end=' ') -+ print('world!', end=' ') - return printed - - def printStuff(): -- print 'a', 'b', 'c', -+ print('a', 'b', 'c', end=' ') - return printed - - def printToNone(): - x = None -- print >>x, 'Hello, world!', -+ print('Hello, world!', end=' ', file=x) - return printed - - def printLines(): - # This failed before Zope 2.4.0a2 -- r = range(3) -+ r = list(range(3)) - for n in r: - for m in r: -- print m + n * len(r), -- print -+ print(m + n * len(r), end=' ') -+ print() - return printed - - def try_map(): - inc = lambda i: i+1 - x = [1, 2, 3] -- print map(inc, x), -+ print(list(map(inc, x)), end=' ') - return printed - - def try_apply(): - def f(x, y, z): - return x + y + z -- print f(*(300, 20), **{'z': 1}), -+ print(f(*(300, 20), **{'z': 1}), end=' ') - return printed - - def try_inplace(): -@@ -45,17 +46,17 @@ def try_inplace(): - - def primes(): - # Somewhat obfuscated code on purpose -- print filter(None,map(lambda y:y*reduce(lambda x,y:x*y!=0, -- map(lambda x,y=y:y%x,range(2,int(pow(y,0.5)+1))),1),range(2,20))), -+ print([_f for _f in [y*reduce(lambda x,y:x*y!=0, -+ list(map(lambda x,y=y:y%x,list(range(2,int(pow(y,0.5)+1))))),1) for y in range(2,20)] if _f], end=' ') - return printed - - def allowed_read(ob): -- print ob.allowed -- print ob.s -- print ob[0] -- print ob[2] -- print ob[3:-1] -- print len(ob) -+ print(ob.allowed) -+ print(ob.s) -+ print(ob[0]) -+ print(ob[2]) -+ print(ob[3:-1]) -+ print(len(ob)) - return printed - - def allowed_default_args(ob): -@@ -83,13 +84,13 @@ def allowed_simple(): - def allowed_write(ob): - ob.writeable = 1 - #ob.writeable += 1 -- [1 for ob.writeable in 1,2] -+ [1 for ob.writeable in [1,2]] - ob['safe'] = 2 - #ob['safe'] += 2 -- [1 for ob['safe'] in 1,2] -+ [1 for ob['safe'] in [1,2]] - - def denied_print(ob): -- print >> ob, 'Hello, world!', -+ print('Hello, world!', end=' ', file=ob) - - def denied_getattr(ob): - #ob.disallowed += 1 -@@ -108,7 +109,7 @@ def denied_setattr2(ob): - ob.allowed = -1 - - def denied_setattr3(ob): -- [1 for ob.allowed in 1,2] -+ [1 for ob.allowed in [1,2]] - - def denied_getitem(ob): - ob[1] -@@ -125,7 +126,7 @@ def denied_setitem2(ob): - ob['x'] = 2 - - def denied_setitem3(ob): -- [1 for ob['x'] in 1,2] -+ [1 for ob['x'] in [1,2]] - - def denied_setslice(ob): - ob[0:1] = 'a' -@@ -135,7 +136,7 @@ def denied_setslice2(ob): - ob[0:1] = 'a' - - def denied_setslice3(ob): -- [1 for ob[0:1] in 1,2] -+ [1 for ob[0:1] in [1,2]] - - ##def strange_attribute(): - ## # If a guard has attributes with names that don't start with an ---- src/RestrictedPython/tests/security_in_syntax.py.orig 2010-07-09 04:07:16 UTC -+++ src/RestrictedPython/tests/security_in_syntax.py -@@ -29,7 +29,7 @@ def bad_attr(): - some_ob._some_attr = 15 - - def no_exec(): -- exec 'q = 1' -+ exec('q = 1') - - def no_yield(): - yield 42 -@@ -47,7 +47,7 @@ def from_import_as_bad_name(): - def except_using_bad_name(): - try: - foo -- except NameError, _leading_underscore: -+ except NameError as _leading_underscore: - # The name of choice (say, _write) is now assigned to an exception - # object. Hard to exploit, but conceivable. - pass ---- src/RestrictedPython/tests/testRestrictions.py.orig 2010-07-09 04:07:16 UTC -+++ src/RestrictedPython/tests/testRestrictions.py -@@ -52,10 +52,10 @@ def find_source(fn, func): - - def get_source(func): - """Less silly interface to find_source""" -- file = func.func_globals['__file__'] -+ file = func.__globals__['__file__'] - if file.endswith('.pyc'): - file = file[:-1] -- source = find_source(file, func.func_code)[1] -+ source = find_source(file, func.__code__)[1] - assert source.strip(), "Source should not be empty!" - return source - -@@ -76,7 +76,7 @@ def create_rmodule(): - 'len', 'chr', 'ord', - ): - rmodule[name] = builtins[name] -- exec code in rmodule -+ exec(code, rmodule) - - class AccessDenied (Exception): pass - -@@ -145,7 +145,7 @@ def guarded_getitem(ob, index): - - def minimal_import(name, _globals, _locals, names): - if name != "__future__": -- raise ValueError, "Only future imports are allowed" -+ raise ValueError("Only future imports are allowed") - import __future__ - return __future__ - -@@ -185,14 +185,14 @@ def inplacevar_wrapper(op, x, y): - inplacevar_wrapper_called[op] = x, y - # This is really lame. But it's just a test. :) - globs = {'x': x, 'y': y} -- exec 'x'+op+'y' in globs -+ exec('x'+op+'y', globs) - return globs['x'] - - class RestrictionTests(unittest.TestCase): - def execFunc(self, name, *args, **kw): - func = rmodule[name] -- verify.verify(func.func_code) -- func.func_globals.update({'_getattr_': guarded_getattr, -+ verify.verify(func.__code__) -+ func.__globals__.update({'_getattr_': guarded_getattr, - '_getitem_': guarded_getitem, - '_write_': TestGuard, - '_print_': PrintCollector, -@@ -263,7 +263,7 @@ class RestrictionTests(unittest.TestCase): - self.assertEqual(inplacevar_wrapper_called['+='], (1, 3)) - - def checkDenied(self): -- for k in rmodule.keys(): -+ for k in list(rmodule.keys()): - if k[:6] == 'denied': - try: - self.execFunc(k, RestrictedObject()) -@@ -290,10 +290,10 @@ class RestrictionTests(unittest.TestCase): - # Unrestricted compile. - code = compile(source, fn, 'exec') - m = {'__builtins__': {'__import__':minimal_import}} -- exec code in m -- for k, v in m.items(): -+ exec(code, m) -+ for k, v in list(m.items()): - if hasattr(v, 'func_code'): -- filename, source = find_source(fn, v.func_code) -+ filename, source = find_source(fn, v.__code__) - # Now compile it with restrictions - try: - code = compile_restricted(source, filename, 'exec') -@@ -327,11 +327,11 @@ class RestrictionTests(unittest.TestCase): - self.assertEqual(res, expect) - - def checkStackSize(self): -- for k, rfunc in rmodule.items(): -+ for k, rfunc in list(rmodule.items()): - if not k.startswith('_') and hasattr(rfunc, 'func_code'): -- rss = rfunc.func_code.co_stacksize -- ss = getattr(restricted_module, k).func_code.co_stacksize -- self.failUnless( -+ rss = rfunc.__code__.co_stacksize -+ ss = getattr(restricted_module, k).__code__.co_stacksize -+ self.assertTrue( - rss >= ss, 'The stack size estimate for %s() ' - 'should have been at least %d, but was only %d' - % (k, ss, rss)) -@@ -427,7 +427,7 @@ class RestrictionTests(unittest.TestCase): - calls.append(seq) - return list(seq) - globals = {"_getiter_": getiter, '_inplacevar_': inplacevar_wrapper} -- exec co in globals, {} -+ exec(co, globals, {}) - # The comparison here depends on the exact code that is - # contained in unpack.py. - # The test doing implicit unpacking in an "except:" clause is -@@ -454,7 +454,7 @@ class RestrictionTests(unittest.TestCase): - [[[3, 4]]], [[3, 4]], [3, 4], - ] - i = expected.index(ineffable) -- self.assert_(isinstance(calls[i], TypeError)) -+ self.assertTrue(isinstance(calls[i], TypeError)) - expected[i] = calls[i] - self.assertEqual(calls, expected) - -@@ -466,7 +466,7 @@ class RestrictionTests(unittest.TestCase): - calls.append(s) - return list(s) - globals = {"_getiter_": getiter} -- exec co in globals, {} -+ exec(co, globals, {}) - self.assertEqual(calls, [[(1,2)], (1, 2)]) - - def checkUnpackSequenceSingle(self): -@@ -477,7 +477,7 @@ class RestrictionTests(unittest.TestCase): - calls.append(s) - return list(s) - globals = {"_getiter_": getiter} -- exec co in globals, {} -+ exec(co, globals, {}) - self.assertEqual(calls, [(1, 2)]) - - def checkClass(self): -@@ -496,7 +496,7 @@ class RestrictionTests(unittest.TestCase): - globals = {"_getattr_": test_getattr, - "_write_": test_setattr, - } -- exec co in globals, {} -+ exec(co, globals, {}) - # Note that the getattr calls don't correspond to the method call - # order, because the x.set method is fetched before its arguments - # are evaluated. -@@ -506,7 +506,7 @@ class RestrictionTests(unittest.TestCase): - - def checkLambda(self): - co = self._compile_file("lambda.py") -- exec co in {}, {} -+ exec(co, {}, {}) - - def checkEmpty(self): - rf = RFunction("", "", "issue945", "empty.py", {}) ---- src/RestrictedPython/tests/unpack.py.orig 2010-07-07 14:42:56 UTC -+++ src/RestrictedPython/tests/unpack.py -@@ -20,7 +20,7 @@ try: - except ValueError: - pass - else: -- raise AssertionError, "expected 'unpack list of wrong size'" -+ raise AssertionError("expected 'unpack list of wrong size'") - - def u2(L): - x, (a, b), y = L -@@ -37,9 +37,10 @@ try: - except TypeError: - pass - else: -- raise AssertionError, "expected 'iteration over non-sequence'" -+ raise AssertionError("expected 'iteration over non-sequence'") - --def u3((x, y)): -+def u3(xxx_todo_changeme): -+ (x, y) = xxx_todo_changeme - assert x == 'a' - assert y == 'b' - return x, y -@@ -58,7 +59,8 @@ def u5(x): - raise TypeError(x) - # This one is tricky to test, because the first level of unpacking - # has a TypeError instance. That's a headache for the test driver. -- except TypeError, [(a, b)]: -+ except TypeError as xxx_todo_changeme1: -+ [(a, b)] = xxx_todo_changeme1.args - assert a == 42 - assert b == 666 - ---- src/RestrictedPython/tests/verify.py.orig 2010-07-07 14:42:56 UTC -+++ src/RestrictedPython/tests/verify.py -@@ -83,7 +83,7 @@ def _verifycode(code): - window[2].arg == "_write_"): - # check that arg is appropriately wrapped - for i, op in enumerate(window): -- print i, op.opname, op.arg -+ print(i, op.opname, op.arg) - raise ValueError("unguard attribute set/del at %s:%d" - % (code.co_filename, line)) - if op.opname.startswith("UNPACK"): diff --git a/security/py-RestrictedPython/pkg-descr b/security/py-RestrictedPython/pkg-descr deleted file mode 100644 index 30006591d683..000000000000 --- a/security/py-RestrictedPython/pkg-descr +++ /dev/null @@ -1,2 +0,0 @@ -RestrictedPython provides a restricted execution environment for Python, -e.g. for running untrusted code. diff --git a/sysutils/Makefile b/sysutils/Makefile index de1f795f61f0..64919ddd5cd0 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -1093,7 +1093,6 @@ SUBDIR += py-upt-pypi SUBDIR += py-upt-rubygems SUBDIR += py-uptime - SUBDIR += py-zdaemon SUBDIR += qchroot SUBDIR += qdirstat SUBDIR += qflipper diff --git a/sysutils/py-zdaemon/Makefile b/sysutils/py-zdaemon/Makefile deleted file mode 100644 index c78007cb7ddb..000000000000 --- a/sysutils/py-zdaemon/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -PORTNAME= zdaemon -PORTVERSION= 4.1.0 -PORTREVISION= 1 -CATEGORIES= sysutils python -MASTER_SITES= PYPI -PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} - -MAINTAINER= zope@FreeBSD.org -COMMENT= Daemon Process Control Library and Tools for Unix-bases Systems -WWW= https://pypi.org/project/zdaemon/ - -LICENSE= ZPL21 -LICENSE_FILE= ${WRKSRC}/LICENSE.txt - -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}ZConfig>0:devel/py-zconfig@${PY_FLAVOR} - -NO_ARCH= yes -USES= python zip -USE_PYTHON= autoplist distutils - -.include <bsd.port.mk> diff --git a/sysutils/py-zdaemon/distinfo b/sysutils/py-zdaemon/distinfo deleted file mode 100644 index fd551639ad44..000000000000 --- a/sysutils/py-zdaemon/distinfo +++ /dev/null @@ -1,2 +0,0 @@ -SHA256 (zdaemon-4.1.0.zip) = 185b374ab49f928bbcdb7572c5cd7c3a9e75324a005ce73dfee4208ce10ab1f9 -SIZE (zdaemon-4.1.0.zip) = 74287 diff --git a/sysutils/py-zdaemon/pkg-descr b/sysutils/py-zdaemon/pkg-descr deleted file mode 100644 index fc970314c73b..000000000000 --- a/sysutils/py-zdaemon/pkg-descr +++ /dev/null @@ -1,6 +0,0 @@ -zdaemon is a Python package which provides APIs for managing -applications run as daemons. Its principal use to date has -been to manage the application server and storage server daemons -for Zope / ZEO, although it is not limited to running Python-based -applications (for instance, it has been used to manage the -'spread' daemon).
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501111322.50BDMAST061516>