mirror of
https://github.com/django/django.git
synced 2025-10-26 15:16:09 +00:00
Fixed #26447 -- Deprecated settings.USE_ETAGS in favor of ConditionalGetMiddleware.
This commit is contained in:
committed by
Tim Graham
parent
46a3d7604e
commit
a840710e1e
@@ -22,10 +22,12 @@ import hashlib
|
||||
import logging
|
||||
import re
|
||||
import time
|
||||
import warnings
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.cache import caches
|
||||
from django.http import HttpResponse, HttpResponseNotModified
|
||||
from django.utils.deprecation import RemovedInDjango21Warning
|
||||
from django.utils.encoding import force_bytes, force_text, iri_to_uri
|
||||
from django.utils.http import (
|
||||
http_date, parse_etags, parse_http_date_safe, quote_etag,
|
||||
@@ -242,6 +244,13 @@ def patch_response_headers(response, cache_timeout=None):
|
||||
if cache_timeout < 0:
|
||||
cache_timeout = 0 # Can't have max-age negative
|
||||
if settings.USE_ETAGS and not response.has_header('ETag'):
|
||||
warnings.warn(
|
||||
"The USE_ETAGS setting is deprecated in favor of "
|
||||
"ConditionalGetMiddleware which sets the ETag regardless of the "
|
||||
"setting. patch_response_headers() won't do ETag processing in "
|
||||
"Django 2.1.",
|
||||
RemovedInDjango21Warning
|
||||
)
|
||||
if hasattr(response, 'render') and callable(response.render):
|
||||
response.add_post_render_callback(set_response_etag)
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user