From fae6a0c03a07313897e930123b4a2f14f7c9e47e Mon Sep 17 00:00:00 2001 From: Michael Merickel Date: Sun, 15 May 2022 18:31:45 -0500 Subject: remove compat module --- .gitignore | 1 + .hgignore | 13 ------------- docs/news.rst | 5 +++++ paste/deploy/compat.py | 32 -------------------------------- paste/deploy/converters.py | 7 ++----- paste/deploy/loadwsgi.py | 14 +++++++------- paste/deploy/paster_templates.py | 10 ++++------ paste/deploy/util.py | 4 +--- tests/test_load_package.py | 9 +++------ 9 files changed, 23 insertions(+), 72 deletions(-) delete mode 100644 .hgignore delete mode 100644 paste/deploy/compat.py diff --git a/.gitignore b/.gitignore index accc766..2ec44b7 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ htmlcov .eggs build dist +tests/fake_packages/FakeApp.egg/EGG-INFO diff --git a/.hgignore b/.hgignore deleted file mode 100644 index 44abbb2..0000000 --- a/.hgignore +++ /dev/null @@ -1,13 +0,0 @@ -syntax: glob -*.egg-info/ -*.egg/ -*.pyc -*.class -dist/ -build/ -docs/_build/ -.tox -.project -.pydevproject -.settings -__pycache__ diff --git a/docs/news.rst b/docs/news.rst index a6dbee4..b827317 100644 --- a/docs/news.rst +++ b/docs/news.rst @@ -1,6 +1,11 @@ Paste Deployment News ===================== +unreleased +---------- + +* Drop support for Python 2, as well as 3.4, 3.5, and 3.6. + 2.1.1 (2020-10-12) ------------------ diff --git a/paste/deploy/compat.py b/paste/deploy/compat.py deleted file mode 100644 index 05047db..0000000 --- a/paste/deploy/compat.py +++ /dev/null @@ -1,32 +0,0 @@ -# (c) 2005 Ian Bicking and contributors; written for Paste (http://pythonpaste.org) -# Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php -"""Python 2<->3 compatibility module""" -import sys - - -def print_(template, *args, **kwargs): - template = str(template) - if args: - template = template % args - elif kwargs: - template = template % kwargs - sys.stdout.writelines(template) - -if sys.version_info < (3, 0): - basestring = basestring - from ConfigParser import ConfigParser - from urllib import unquote - iteritems = lambda d: d.iteritems() - dictkeys = lambda d: d.keys() - - def reraise(t, e, tb): - exec('raise t, e, tb', dict(t=t, e=e, tb=tb)) -else: - basestring = str - from configparser import ConfigParser - from urllib.parse import unquote - iteritems = lambda d: d.items() - dictkeys = lambda d: list(d.keys()) - - def reraise(t, e, tb): - raise e.with_traceback(tb) diff --git a/paste/deploy/converters.py b/paste/deploy/converters.py index c9d87de..30a3290 100644 --- a/paste/deploy/converters.py +++ b/paste/deploy/converters.py @@ -1,14 +1,11 @@ # (c) 2005 Ian Bicking and contributors; written for Paste (http://pythonpaste.org) # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php -from paste.deploy.compat import basestring - - truthy = frozenset(['true', 'yes', 'on', 'y', 't', '1']) falsy = frozenset(['false', 'no', 'off', 'n', 'f', '0']) def asbool(obj): - if isinstance(obj, basestring): + if isinstance(obj, str): obj = obj.strip().lower() if obj in truthy: return True @@ -27,7 +24,7 @@ def asint(obj): def aslist(obj, sep=None, strip=True): - if isinstance(obj, basestring): + if isinstance(obj, str): lst = obj.split(sep) if strip: lst = [v.strip() for v in lst] diff --git a/paste/deploy/loadwsgi.py b/paste/deploy/loadwsgi.py index 9f3dd0e..2c8f827 100644 --- a/paste/deploy/loadwsgi.py +++ b/paste/deploy/loadwsgi.py @@ -1,13 +1,13 @@ # (c) 2005 Ian Bicking and contributors; written for Paste (http://pythonpaste.org) # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php -from __future__ import with_statement +from configparser import ConfigParser import os -import sys +import pkg_resources import re +import sys +from urllib.parse import unquote -import pkg_resources -from paste.deploy.compat import ConfigParser, unquote, iteritems, dictkeys from paste.deploy.util import fix_call, lookup_object __all__ = ['loadapp', 'loadserver', 'loadfilter', 'appconfig'] @@ -70,7 +70,7 @@ class NicerConfigParser(ConfigParser): Mainly to support defaults using values such as %(here)s """ defaults = ConfigParser.defaults(self).copy() - for key, val in iteritems(defaults): + for key, val in defaults.items(): defaults[key] = self.get('DEFAULT', key) or val return defaults @@ -400,7 +400,7 @@ class ConfigLoader(_Loader): self.parser.read_file(f) def update_defaults(self, new_defaults, overwrite=True): - for key, value in iteritems(new_defaults): + for key, value in new_defaults.items(): if not overwrite and key in self.parser._defaults: continue self.parser._defaults[key] = value @@ -660,7 +660,7 @@ class EggLoader(_Loader): dist.location, ', '.join(_flatten(object_type.egg_protocols)), ', '.join(_flatten([ - dictkeys(pkg_resources.get_entry_info(self.spec, prot, name) or {}) + list((pkg_resources.get_entry_info(self.spec, prot, name) or {}).keys()) for prot in protocol_options] or '(no entry points)')))) if len(possible) > 1: raise LookupError( diff --git a/paste/deploy/paster_templates.py b/paste/deploy/paster_templates.py index 9c5f942..edfa97a 100644 --- a/paste/deploy/paster_templates.py +++ b/paste/deploy/paster_templates.py @@ -4,8 +4,6 @@ import os from paste.script.templates import Template -from paste.deploy.compat import print_ - class PasteDeploy(Template): @@ -30,7 +28,7 @@ class PasteDeploy(Template): ' main = %(package)s.wsgiapp:make_app\n') % vars, indent=False) if command.verbose: - print_('*' * 72) - print_('* Run "paster serve docs/devel_config.ini" to run the sample application') - print_('* on http://localhost:8080') - print_('*' * 72) + print('*' * 72) + print('* Run "paster serve docs/devel_config.ini" to run the sample application') + print('* on http://localhost:8080') + print('*' * 72) diff --git a/paste/deploy/util.py b/paste/deploy/util.py index b6f766a..2a56a07 100644 --- a/paste/deploy/util.py +++ b/paste/deploy/util.py @@ -3,8 +3,6 @@ import inspect import sys -from paste.deploy.compat import reraise - def fix_type_error(exc_info, callable, varargs, kwargs): """ @@ -55,7 +53,7 @@ def fix_call(callable, *args, **kw): val = callable(*args, **kw) except TypeError: exc_info = fix_type_error(None, callable, args, kw) - reraise(*exc_info) + raise exc_info[1] from None return val diff --git a/tests/test_load_package.py b/tests/test_load_package.py index b3fea55..6ba1ad4 100644 --- a/tests/test_load_package.py +++ b/tests/test_load_package.py @@ -1,12 +1,9 @@ from pprint import pprint -import sys - import pkg_resources - -from paste.deploy.compat import print_ +import sys def test_load_package(): - print_('Path:') + print('Path:') pprint(sys.path) - print_(pkg_resources.require('FakeApp')) + print(pkg_resources.require('FakeApp')) -- cgit v1.2.1