diff options
| -rw-r--r-- | docs/topics/3.1-announcement.md | 10 | ||||
| -rw-r--r-- | rest_framework/request.py | 12 | ||||
| -rw-r--r-- | rest_framework/serializers.py | 12 | ||||
| -rw-r--r-- | rest_framework/views.py | 2 | 
4 files changed, 23 insertions, 13 deletions
| diff --git a/docs/topics/3.1-announcement.md b/docs/topics/3.1-announcement.md index fb4fa083..7242a032 100644 --- a/docs/topics/3.1-announcement.md +++ b/docs/topics/3.1-announcement.md @@ -173,6 +173,16 @@ Thanks go to the latest member of our maintenance team, [José Padilla](https://  --- +## Deprecations + +The `request.DATA`, `request.FILES` and `request.QUERY_PARAMS` attributes move from pending deprecation, to deprecated. Use `request.data` and `request.query_params` instead, as discussed in the 3.0 release notes. + +The ModelSerializer Meta options for `write_only_fields`, `view_name` and `lookup_field` are also moved from pending deprecation, to deprecated. Use `extra_kwargs` instead, as discussed in the 3.0 release notes. + +All these attributes and options will still work in 3.1, but their usage will raise a warning. They will be fully removed in 3.2. + +--- +  ## What's next?  The next focus will be on HTML renderings of API output and will include: diff --git a/rest_framework/request.py b/rest_framework/request.py index bf6ff670..86fb1ef1 100644 --- a/rest_framework/request.py +++ b/rest_framework/request.py @@ -219,8 +219,8 @@ class Request(object):          Synonym for `.query_params`, for backwards compatibility.          """          warnings.warn( -            "`request.QUERY_PARAMS` is pending deprecation. Use `request.query_params` instead.", -            PendingDeprecationWarning, +            "`request.QUERY_PARAMS` is deprecated. Use `request.query_params` instead.", +            DeprecationWarning,              stacklevel=1          )          return self._request.GET @@ -240,8 +240,8 @@ class Request(object):          arbitrary parsers, and also works on methods other than POST (eg PUT).          """          warnings.warn( -            "`request.DATA` is pending deprecation. Use `request.data` instead.", -            PendingDeprecationWarning, +            "`request.DATA` is deprecated. Use `request.data` instead.", +            DeprecationWarning,              stacklevel=1          )          if not _hasattr(self, '_data'): @@ -257,8 +257,8 @@ class Request(object):          arbitrary parsers, and also works on methods other than POST (eg PUT).          """          warnings.warn( -            "`request.FILES` is pending deprecation. Use `request.data` instead.", -            PendingDeprecationWarning, +            "`request.FILES` is deprecated. Use `request.data` instead.", +            DeprecationWarning,              stacklevel=1          )          if not _hasattr(self, '_files'): diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 18821958..18b810df 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -1103,9 +1103,9 @@ class ModelSerializer(Serializer):          write_only_fields = getattr(self.Meta, 'write_only_fields', None)          if write_only_fields is not None:              warnings.warn( -                "The `Meta.write_only_fields` option is pending deprecation. " +                "The `Meta.write_only_fields` option is deprecated. "                  "Use `Meta.extra_kwargs={<field_name>: {'write_only': True}}` instead.", -                PendingDeprecationWarning, +                DeprecationWarning,                  stacklevel=3              )              for field_name in write_only_fields: @@ -1116,9 +1116,9 @@ class ModelSerializer(Serializer):          view_name = getattr(self.Meta, 'view_name', None)          if view_name is not None:              warnings.warn( -                "The `Meta.view_name` option is pending deprecation. " +                "The `Meta.view_name` option is deprecated. "                  "Use `Meta.extra_kwargs={'url': {'view_name': ...}}` instead.", -                PendingDeprecationWarning, +                DeprecationWarning,                  stacklevel=3              )              kwargs = extra_kwargs.get(api_settings.URL_FIELD_NAME, {}) @@ -1128,9 +1128,9 @@ class ModelSerializer(Serializer):          lookup_field = getattr(self.Meta, 'lookup_field', None)          if lookup_field is not None:              warnings.warn( -                "The `Meta.lookup_field` option is pending deprecation. " +                "The `Meta.lookup_field` option is deprecated. "                  "Use `Meta.extra_kwargs={'url': {'lookup_field': ...}}` instead.", -                PendingDeprecationWarning, +                DeprecationWarning,                  stacklevel=3              )              kwargs = extra_kwargs.get(api_settings.URL_FIELD_NAME, {}) diff --git a/rest_framework/views.py b/rest_framework/views.py index 9445c840..b4abc4d9 100644 --- a/rest_framework/views.py +++ b/rest_framework/views.py @@ -409,7 +409,7 @@ class APIView(View):              warnings.warn(                  'The `exception_handler(exc)` call signature is deprecated. '                  'Use `exception_handler(exc, context) instead.', -                PendingDeprecationWarning +                DeprecationWarning              )              response = exception_handler(exc)          else: | 
