From e7894dac232a9ba45c3b345608d5ac6ac6a79d3a Mon Sep 17 00:00:00 2001 From: "Ware, Joseph (DLSLtd,RAL,LSCI)" Date: Thu, 23 Jan 2025 10:04:57 +0000 Subject: [PATCH] Replace use of internal Starlette compat function --- tiled/server/file_response_with_range.py | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/tiled/server/file_response_with_range.py b/tiled/server/file_response_with_range.py index addeda7f3..e440576cd 100644 --- a/tiled/server/file_response_with_range.py +++ b/tiled/server/file_response_with_range.py @@ -7,19 +7,13 @@ # starlette adds support upstream, we should consider refactoring to use that. # Ref: https://github.com/encode/starlette/pull/1999 +import hashlib import os import stat import typing import anyio -from starlette.responses import ( - FileResponse, - Receive, - Scope, - Send, - formatdate, - md5_hexdigest, -) +from starlette.responses import FileResponse, Receive, Scope, Send, formatdate from starlette.status import HTTP_200_OK, HTTP_206_PARTIAL_CONTENT @@ -52,7 +46,7 @@ def set_stat_headers(self, stat_result: os.stat_result) -> None: self.headers.setdefault("content-range", f"bytes {start}-{end}/{size}") else: content_length = size - etag = md5_hexdigest(etag_base.encode(), usedforsecurity=False) + etag = hashlib.md5(etag_base.encode(), usedforsecurity=False).hexdigest() self.headers.setdefault("content-length", content_length) self.headers.setdefault("last-modified", last_modified)