Преглед изворни кода

Refs #31327 -- Removed providing_args argument for Signal per deprecation timeline.

Mariusz Felisiak пре 4 година
родитељ
комит
1adcf20385
3 измењених фајлова са 3 додато и 33 уклоњено
  1. 1 11
      django/dispatch/dispatcher.py
  2. 2 0
      docs/releases/4.0.txt
  3. 0 22
      tests/signals/test_deprecation.py

+ 1 - 11
django/dispatch/dispatcher.py

@@ -1,9 +1,7 @@
 import logging
 import threading
-import warnings
 import weakref
 
-from django.utils.deprecation import RemovedInDjango40Warning
 from django.utils.inspect import func_accepts_kwargs
 
 logger = logging.getLogger('django.dispatch')
@@ -30,19 +28,11 @@ class Signal:
         receivers
             { receiverkey (id) : weakref(receiver) }
     """
-    def __init__(self, providing_args=None, use_caching=False):
+    def __init__(self, use_caching=False):
         """
         Create a new signal.
         """
         self.receivers = []
-        if providing_args is not None:
-            warnings.warn(
-                'The providing_args argument is deprecated. As it is purely '
-                'documentational, it has no replacement. If you rely on this '
-                'argument as documentation, you can move the text to a code '
-                'comment or docstring.',
-                RemovedInDjango40Warning, stacklevel=2,
-            )
         self.lock = threading.Lock()
         self.use_caching = use_caching
         # For convenience we create empty caches even if they are not used.

+ 2 - 0
docs/releases/4.0.txt

@@ -299,3 +299,5 @@ to remove usage of these features.
 * The ``get_request`` argument for
   ``django.utils.deprecation.MiddlewareMixin.__init__()`` is required and
   doesn't accept ``None``.
+
+* The ``providing_args`` argument for ``django.dispatch.Signal`` is removed.

+ 0 - 22
tests/signals/test_deprecation.py

@@ -1,22 +0,0 @@
-import warnings
-
-from django.dispatch import Signal
-from django.test import SimpleTestCase
-from django.utils.deprecation import RemovedInDjango40Warning
-
-
-class SignalDeprecationTests(SimpleTestCase):
-    def test_providing_args_warning(self):
-        msg = (
-            'The providing_args argument is deprecated. As it is purely '
-            'documentational, it has no replacement. If you rely on this '
-            'argument as documentation, you can move the text to a code '
-            'comment or docstring.'
-        )
-        with self.assertWarnsMessage(RemovedInDjango40Warning, msg):
-            Signal(providing_args=['arg1', 'arg2'])
-
-    def test_without_providing_args_does_not_warn(self):
-        with warnings.catch_warnings(record=True) as recorded:
-            Signal()
-        self.assertEqual(len(recorded), 0)