MCPcopy
hub / github.com/django/django / __init__

Method __init__

django/core/mail/backends/base.py:28–70  ·  view source on GitHub ↗
(
        self,
        fail_silently=_NOT_PROVIDED,
        *,
        alias=None,
        _ignore_unknown_kwargs=None,
        **kwargs,
    )

Source from the content-addressed store, hash-verified

26
27 # RemovedInDjango70Warning: fail_silently, _ignore_unknown_kwargs.
28 def __init__(
29 self,
30 fail_silently=_NOT_PROVIDED,
31 *,
32 alias=None,
33 _ignore_unknown_kwargs=None,
34 **kwargs,
35 ):
36 self.alias = alias
37
38 # RemovedInDjango70Warning.
39 if fail_silently is _NOT_PROVIDED:
40 self._fail_silently = False
41 else:
42 self._fail_silently = fail_silently
43 # Force deprecation warning unless in _ignore_unknown_kwargs.
44 kwargs["fail_silently"] = fail_silently
45 if _ignore_unknown_kwargs:
46 for ignored in _ignore_unknown_kwargs:
47 kwargs.pop(ignored, None)
48
49 if kwargs:
50 kwarg_names = ", ".join(repr(key) for key in kwargs.keys())
51
52 # RemovedInDjango70Warning.
53 if alias is None:
54 # Not being initialized from mail.mailers. Unknown kwargs are
55 # ignored -- with a deprecation warning if they originated from
56 # outside Django (either direct construction of a built-in
57 # backend or a super.__init__() call from a custom subclass).
58 # Use something more precise than self.__class__.__name__,
59 # which is often just "EmailBackend".
60 class_name = f"{type(self).__module__}.{type(self).__qualname__}"
61 warn_about_external_use(
62 f"{class_name}.__init__() does not support {kwarg_names}. "
63 "In Django 7.0, BaseEmailBackend will raise a TypeError "
64 "for unknown keyword arguments.",
65 RemovedInDjango70Warning,
66 skip_name_prefixes="django.core.mail.backends",
67 )
68 return
69
70 raise InvalidMailer(f"Unknown options {kwarg_names}.", alias=alias)
71
72 # RemovedInDjango70Warning.
73 def __getattr__(self, name):

Callers

nothing calls this directly

Calls 5

warn_about_external_useFunction · 0.90
InvalidMailerClass · 0.90
popMethod · 0.45
joinMethod · 0.45
keysMethod · 0.45

Tested by

no test coverage detected