Switch metaclass initialization to python 3-compatible syntax (#8326)
This commit is contained in:
parent
44dec6cbc4
commit
a3f124b821
|
@ -0,0 +1 @@
|
||||||
|
Update outdated usages of `metaclass` to python 3 syntax.
|
|
@ -51,14 +51,12 @@ if TYPE_CHECKING:
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class RoomMemberHandler:
|
class RoomMemberHandler(metaclass=abc.ABCMeta):
|
||||||
# TODO(paul): This handler currently contains a messy conflation of
|
# TODO(paul): This handler currently contains a messy conflation of
|
||||||
# low-level API that works on UserID objects and so on, and REST-level
|
# low-level API that works on UserID objects and so on, and REST-level
|
||||||
# API that takes ID strings and returns pagination chunks. These concerns
|
# API that takes ID strings and returns pagination chunks. These concerns
|
||||||
# ought to be separated out a lot better.
|
# ought to be separated out a lot better.
|
||||||
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
def __init__(self, hs: "HomeServer"):
|
def __init__(self, hs: "HomeServer"):
|
||||||
self.hs = hs
|
self.hs = hs
|
||||||
self.store = hs.get_datastore()
|
self.store = hs.get_datastore()
|
||||||
|
|
|
@ -33,7 +33,7 @@ from synapse.util.stringutils import random_string
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class ReplicationEndpoint:
|
class ReplicationEndpoint(metaclass=abc.ABCMeta):
|
||||||
"""Helper base class for defining new replication HTTP endpoints.
|
"""Helper base class for defining new replication HTTP endpoints.
|
||||||
|
|
||||||
This creates an endpoint under `/_synapse/replication/:NAME/:PATH_ARGS..`
|
This creates an endpoint under `/_synapse/replication/:NAME/:PATH_ARGS..`
|
||||||
|
@ -72,8 +72,6 @@ class ReplicationEndpoint:
|
||||||
is received.
|
is received.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
NAME = abc.abstractproperty() # type: str # type: ignore
|
NAME = abc.abstractproperty() # type: str # type: ignore
|
||||||
PATH_ARGS = abc.abstractproperty() # type: Tuple[str, ...] # type: ignore
|
PATH_ARGS = abc.abstractproperty() # type: Tuple[str, ...] # type: ignore
|
||||||
METHOD = "POST"
|
METHOD = "POST"
|
||||||
|
|
|
@ -29,15 +29,13 @@ from synapse.util.caches.stream_change_cache import StreamChangeCache
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class AccountDataWorkerStore(SQLBaseStore):
|
# The ABCMeta metaclass ensures that it cannot be instantiated without
|
||||||
|
# the abstract methods being implemented.
|
||||||
|
class AccountDataWorkerStore(SQLBaseStore, metaclass=abc.ABCMeta):
|
||||||
"""This is an abstract base class where subclasses must implement
|
"""This is an abstract base class where subclasses must implement
|
||||||
`get_max_account_data_stream_id` which can be called in the initializer.
|
`get_max_account_data_stream_id` which can be called in the initializer.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# This ABCMeta metaclass ensures that we cannot be instantiated without
|
|
||||||
# the abstract methods being implemented.
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
def __init__(self, database: DatabasePool, db_conn, hs):
|
def __init__(self, database: DatabasePool, db_conn, hs):
|
||||||
account_max = self.get_max_account_data_stream_id()
|
account_max = self.get_max_account_data_stream_id()
|
||||||
self._account_data_stream_cache = StreamChangeCache(
|
self._account_data_stream_cache = StreamChangeCache(
|
||||||
|
|
|
@ -61,6 +61,8 @@ def _load_rules(rawrules, enabled_map, use_new_defaults=False):
|
||||||
return rules
|
return rules
|
||||||
|
|
||||||
|
|
||||||
|
# The ABCMeta metaclass ensures that it cannot be instantiated without
|
||||||
|
# the abstract methods being implemented.
|
||||||
class PushRulesWorkerStore(
|
class PushRulesWorkerStore(
|
||||||
ApplicationServiceWorkerStore,
|
ApplicationServiceWorkerStore,
|
||||||
ReceiptsWorkerStore,
|
ReceiptsWorkerStore,
|
||||||
|
@ -68,15 +70,12 @@ class PushRulesWorkerStore(
|
||||||
RoomMemberWorkerStore,
|
RoomMemberWorkerStore,
|
||||||
EventsWorkerStore,
|
EventsWorkerStore,
|
||||||
SQLBaseStore,
|
SQLBaseStore,
|
||||||
|
metaclass=abc.ABCMeta,
|
||||||
):
|
):
|
||||||
"""This is an abstract base class where subclasses must implement
|
"""This is an abstract base class where subclasses must implement
|
||||||
`get_max_push_rules_stream_id` which can be called in the initializer.
|
`get_max_push_rules_stream_id` which can be called in the initializer.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# This ABCMeta metaclass ensures that we cannot be instantiated without
|
|
||||||
# the abstract methods being implemented.
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
def __init__(self, database: DatabasePool, db_conn, hs):
|
def __init__(self, database: DatabasePool, db_conn, hs):
|
||||||
super(PushRulesWorkerStore, self).__init__(database, db_conn, hs)
|
super(PushRulesWorkerStore, self).__init__(database, db_conn, hs)
|
||||||
|
|
||||||
|
|
|
@ -31,15 +31,13 @@ from synapse.util.caches.stream_change_cache import StreamChangeCache
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class ReceiptsWorkerStore(SQLBaseStore):
|
# The ABCMeta metaclass ensures that it cannot be instantiated without
|
||||||
|
# the abstract methods being implemented.
|
||||||
|
class ReceiptsWorkerStore(SQLBaseStore, metaclass=abc.ABCMeta):
|
||||||
"""This is an abstract base class where subclasses must implement
|
"""This is an abstract base class where subclasses must implement
|
||||||
`get_max_receipt_stream_id` which can be called in the initializer.
|
`get_max_receipt_stream_id` which can be called in the initializer.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# This ABCMeta metaclass ensures that we cannot be instantiated without
|
|
||||||
# the abstract methods being implemented.
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
def __init__(self, database: DatabasePool, db_conn, hs):
|
def __init__(self, database: DatabasePool, db_conn, hs):
|
||||||
super(ReceiptsWorkerStore, self).__init__(database, db_conn, hs)
|
super(ReceiptsWorkerStore, self).__init__(database, db_conn, hs)
|
||||||
|
|
||||||
|
|
|
@ -259,14 +259,12 @@ def filter_to_clause(event_filter: Optional[Filter]) -> Tuple[str, List[str]]:
|
||||||
return " AND ".join(clauses), args
|
return " AND ".join(clauses), args
|
||||||
|
|
||||||
|
|
||||||
class StreamWorkerStore(EventsWorkerStore, SQLBaseStore):
|
class StreamWorkerStore(EventsWorkerStore, SQLBaseStore, metaclass=abc.ABCMeta):
|
||||||
"""This is an abstract base class where subclasses must implement
|
"""This is an abstract base class where subclasses must implement
|
||||||
`get_room_max_stream_ordering` and `get_room_min_stream_ordering`
|
`get_room_max_stream_ordering` and `get_room_min_stream_ordering`
|
||||||
which can be called in the initializer.
|
which can be called in the initializer.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
def __init__(self, database: DatabasePool, db_conn, hs: "HomeServer"):
|
def __init__(self, database: DatabasePool, db_conn, hs: "HomeServer"):
|
||||||
super(StreamWorkerStore, self).__init__(database, db_conn, hs)
|
super(StreamWorkerStore, self).__init__(database, db_conn, hs)
|
||||||
|
|
||||||
|
|
|
@ -165,7 +165,9 @@ def get_localpart_from_id(string):
|
||||||
DS = TypeVar("DS", bound="DomainSpecificString")
|
DS = TypeVar("DS", bound="DomainSpecificString")
|
||||||
|
|
||||||
|
|
||||||
class DomainSpecificString(namedtuple("DomainSpecificString", ("localpart", "domain"))):
|
class DomainSpecificString(
|
||||||
|
namedtuple("DomainSpecificString", ("localpart", "domain")), metaclass=abc.ABCMeta
|
||||||
|
):
|
||||||
"""Common base class among ID/name strings that have a local part and a
|
"""Common base class among ID/name strings that have a local part and a
|
||||||
domain name, prefixed with a sigil.
|
domain name, prefixed with a sigil.
|
||||||
|
|
||||||
|
@ -175,8 +177,6 @@ class DomainSpecificString(namedtuple("DomainSpecificString", ("localpart", "dom
|
||||||
'domain' : The domain part of the name
|
'domain' : The domain part of the name
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__metaclass__ = abc.ABCMeta
|
|
||||||
|
|
||||||
SIGIL = abc.abstractproperty() # type: str # type: ignore
|
SIGIL = abc.abstractproperty() # type: str # type: ignore
|
||||||
|
|
||||||
# Deny iteration because it will bite you if you try to create a singleton
|
# Deny iteration because it will bite you if you try to create a singleton
|
||||||
|
|
Loading…
Reference in New Issue