Fix: URL Resolution, Team Stats Query Optimization and Caching #1189
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary / Highlights
This pull request includes several changes to the codebase, focusing on middleware updates, caching improvements, and minor refactoring. The most important changes are listed below:
Middleware Updates:
GateMiddleware
to handle non-existent endpoints with a 404 response insrc/_main_/settings.py
and created the middleware class insrc/api/middlewares/gate_middleware.py
. [1] [2]Caching Improvements:
@cached_request
decorator for severallist
methods in various handler files to improve performance by caching responses. [1] [2] [3] [4] [5]Code Refactoring:
wrapper
function insrc/api/decorators.py
to use a more efficient caching key and added a check for test mode.src/api/services/team.py
.info
method insrc/database/models.py
to handle cases whereself.community
isNone
.Logging Improvements:
src/_main_/utils/massenergize_logger/__init__.py
.Minor Fixes:
_get_file_url
to an empty string instead ofNone
when the image is not present insrc/website/views.py
.Details (Give details about what this PR accomplishes, include any screenshots etc)
Testing Steps (Provide details on how your changes can be tested)
Requirements (place an
x
in each[ ]
)Transparency (Project board)