diff options
Diffstat (limited to 'lib/sqlalchemy/engine')
| -rw-r--r-- | lib/sqlalchemy/engine/base.py | 6 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/characteristics.py | 4 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/cursor.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/default.py | 7 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/reflection.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/result.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/row.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/url.py | 25 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/util.py | 3 |
9 files changed, 25 insertions, 28 deletions
diff --git a/lib/sqlalchemy/engine/base.py b/lib/sqlalchemy/engine/base.py index 389270e45..d2939c035 100644 --- a/lib/sqlalchemy/engine/base.py +++ b/lib/sqlalchemy/engine/base.py @@ -4,8 +4,6 @@ # # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php -from __future__ import with_statement - import contextlib import sys @@ -1464,7 +1462,7 @@ class Connection(Connectable): raise except BaseException as e: self._handle_dbapi_exception( - e, util.text_type(statement), parameters, None, None + e, str(statement), parameters, None, None ) return # not reached @@ -2518,7 +2516,7 @@ class Engine(ConnectionEventsTarget, log.Identified): else: yield connection - @util.contextmanager + @contextlib.contextmanager def begin(self): """Return a context manager delivering a :class:`_engine.Connection` with a :class:`.Transaction` established. diff --git a/lib/sqlalchemy/engine/characteristics.py b/lib/sqlalchemy/engine/characteristics.py index 2543f591b..10455451f 100644 --- a/lib/sqlalchemy/engine/characteristics.py +++ b/lib/sqlalchemy/engine/characteristics.py @@ -1,9 +1,7 @@ import abc -from ..util import ABC - -class ConnectionCharacteristic(ABC): +class ConnectionCharacteristic(abc.ABC): """An abstract base for an object that can set, get and reset a per-connection characteristic, typically one that gets reset when the connection is returned to the connection pool. diff --git a/lib/sqlalchemy/engine/cursor.py b/lib/sqlalchemy/engine/cursor.py index 54db9f6c2..1f1a2fcf1 100644 --- a/lib/sqlalchemy/engine/cursor.py +++ b/lib/sqlalchemy/engine/cursor.py @@ -669,7 +669,7 @@ class CursorResultMetaData(ResultMetaData): "_keymap": { key: (rec[MD_INDEX], rec[MD_RESULT_MAP_INDEX], _UNPICKLED, key) for key, rec in self._keymap.items() - if isinstance(key, util.string_types + util.int_types) + if isinstance(key, (str, int)) }, "_keys": self._keys, "_translated_indexes": self._translated_indexes, diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index 3af24d913..a47ed963d 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -16,6 +16,7 @@ as the base class for their own corresponding classes. import functools import random import re +from time import perf_counter import weakref from . import characteristics @@ -780,7 +781,7 @@ class DefaultExecutionContext(interfaces.ExecutionContext): self.execution_options = execution_options - self.unicode_statement = util.text_type(compiled) + self.unicode_statement = str(compiled) if compiled.schema_translate_map: schema_translate_map = self.execution_options.get( "schema_translate_map", {} @@ -1003,7 +1004,7 @@ class DefaultExecutionContext(interfaces.ExecutionContext): if self.compiled is None: return "raw sql" - now = util.perf_counter() + now = perf_counter() ch = self.cache_hit @@ -1515,7 +1516,7 @@ class DefaultExecutionContext(interfaces.ExecutionContext): for key in compiled_params ) return self._execute_scalar( - util.text_type(compiled), type_, parameters=parameters + str(compiled), type_, parameters=parameters ) current_parameters = None diff --git a/lib/sqlalchemy/engine/reflection.py b/lib/sqlalchemy/engine/reflection.py index c918f15b3..7abc404f0 100644 --- a/lib/sqlalchemy/engine/reflection.py +++ b/lib/sqlalchemy/engine/reflection.py @@ -47,7 +47,7 @@ def cache(fn, self, con, *args, **kw): return fn(self, con, *args, **kw) key = ( fn.__name__, - tuple(a for a in args if isinstance(a, util.string_types)), + tuple(a for a in args if isinstance(a, str)), tuple((k, v) for k, v in kw.items() if k != "info_cache"), ) ret = info_cache.get(key) diff --git a/lib/sqlalchemy/engine/result.py b/lib/sqlalchemy/engine/result.py index 4187c6c13..e2f4033e0 100644 --- a/lib/sqlalchemy/engine/result.py +++ b/lib/sqlalchemy/engine/result.py @@ -8,6 +8,7 @@ """Define generic result set constructs.""" +import collections.abc as collections_abc import functools import itertools import operator @@ -19,7 +20,6 @@ from .. import util from ..sql.base import _generative from ..sql.base import HasMemoized from ..sql.base import InPlaceGenerative -from ..util import collections_abc if _baserow_usecext: diff --git a/lib/sqlalchemy/engine/row.py b/lib/sqlalchemy/engine/row.py index 782fc21b8..1a8c4e555 100644 --- a/lib/sqlalchemy/engine/row.py +++ b/lib/sqlalchemy/engine/row.py @@ -8,11 +8,11 @@ """Define row constructs including :class:`.Row`.""" +import collections.abc as collections_abc import operator from .. import util from ..sql import util as sql_util -from ..util.compat import collections_abc MD_INDEX = 0 # integer index in cursor.description diff --git a/lib/sqlalchemy/engine/url.py b/lib/sqlalchemy/engine/url.py index 7f09b1eac..c83753bdc 100644 --- a/lib/sqlalchemy/engine/url.py +++ b/lib/sqlalchemy/engine/url.py @@ -14,15 +14,17 @@ argument; alternatively, the URL is a public-facing construct which can be used directly and is also accepted directly by ``create_engine()``. """ +import collections.abc as collections_abc import re +from urllib.parse import parse_qsl +from urllib.parse import quote_plus +from urllib.parse import unquote from .interfaces import Dialect from .. import exc from .. import util from ..dialects import plugins from ..dialects import registry -from ..util import collections_abc -from ..util import compat class URL( @@ -165,7 +167,7 @@ class URL( @classmethod def _assert_str(cls, v, paramname): - if not isinstance(v, compat.string_types): + if not isinstance(v, str): raise TypeError("%s must be a string" % paramname) return v @@ -193,7 +195,7 @@ class URL( ) def _assert_str(v): - if not isinstance(v, compat.string_types): + if not isinstance(v, str): raise TypeError("Query dictionary keys must be strings") return v @@ -308,9 +310,7 @@ class URL( :meth:`_engine.URL.update_query_dict` """ # noqa: E501 - return self.update_query_pairs( - util.parse_qsl(query_string), append=append - ) + return self.update_query_pairs(parse_qsl(query_string), append=append) def update_query_pairs(self, key_value_pairs, append=False): """Return a new :class:`_engine.URL` object with the @@ -548,7 +548,7 @@ class URL( keys = list(self.query) keys.sort() s += "?" + "&".join( - "%s=%s" % (util.quote_plus(k), util.quote_plus(element)) + "%s=%s" % (quote_plus(k), quote_plus(element)) for k in keys for element in util.to_list(self.query[k]) ) @@ -711,7 +711,7 @@ def make_url(name_or_url): existing URL object is passed, just returns the object. """ - if isinstance(name_or_url, util.string_types): + if isinstance(name_or_url, str): return _parse_rfc1738_args(name_or_url) else: return name_or_url @@ -744,7 +744,7 @@ def _parse_rfc1738_args(name): if components["query"] is not None: query = {} - for key, value in util.parse_qsl(components["query"]): + for key, value in parse_qsl(components["query"]): if key in query: query[key] = util.to_list(query[key]) query[key].append(value) @@ -780,15 +780,14 @@ def _rfc_1738_quote(text): return re.sub(r"[:@/]", lambda m: "%%%X" % ord(m.group(0)), text) -def _rfc_1738_unquote(text): - return util.unquote(text) +_rfc_1738_unquote = unquote def _parse_keyvalue_args(name): m = re.match(r"(\w+)://(.*)", name) if m is not None: (name, args) = m.group(1, 2) - opts = dict(util.parse_qsl(args)) + opts = dict(parse_qsl(args)) return URL(name, *opts) else: return None diff --git a/lib/sqlalchemy/engine/util.py b/lib/sqlalchemy/engine/util.py index 4467bafd3..732ae7fa1 100644 --- a/lib/sqlalchemy/engine/util.py +++ b/lib/sqlalchemy/engine/util.py @@ -5,9 +5,10 @@ # This module is part of SQLAlchemy and is released under # the MIT License: https://www.opensource.org/licenses/mit-license.php +import collections.abc as collections_abc + from .. import exc from .. import util -from ..util import collections_abc from ..util import immutabledict |
