No description
Find a file
Ayush Patil 04a5a04140 Deprecate should_ignore_error method
The `should_ignore_error()` method was added in f191809 to support
context preservation for debugging, but it no longer serves its
original purpose and adds unnecessary overhead.

Issues with the current implementation:
- Always returns False by default
- Called on every single request with no benefit
- The original intention for error ignoring during debugging is not
  how context preservation works anymore
- No documentation beyond API reference
- No tests for the functionality
- No evidence of real-world usage

Changes:
- Add deprecation warning to App.should_ignore_error() that will be
  removed in Flask 4.0
- Optimize call site to only invoke the method if it's been overridden
  by a subclass, eliminating the function call overhead for 99.9% of
  requests
- Add comprehensive tests for the deprecation behavior
- Update CHANGES.rst with deprecation notice

Teardown handlers should manage their own error handling instead of
relying on this method.

Fixes #5816
2025-12-18 17:47:38 +05:30
.devcontainer update project files (#5457) 2024-04-07 10:24:40 -07:00
.github Merge branch 'stable' 2025-11-17 10:05:51 -08:00
docs Docs typo/markup fixes (#5829) 2025-10-14 13:26:26 -07:00
examples Merge remote-tracking branch 'origin/stable' 2024-11-13 08:43:48 -08:00
src/flask Deprecate should_ignore_error method 2025-12-18 17:47:38 +05:30
tests Deprecate should_ignore_error method 2025-12-18 17:47:38 +05:30
.editorconfig update project files (#5457) 2024-04-07 10:24:40 -07:00
.gitignore use uv 2025-05-11 17:58:53 -07:00
.pre-commit-config.yaml update dev dependencies 2025-11-17 09:43:40 -08:00
.readthedocs.yaml use uv 2025-05-11 17:58:53 -07:00
CHANGES.rst Deprecate should_ignore_error method 2025-12-18 17:47:38 +05:30
LICENSE.txt update project files (#5457) 2024-04-07 10:24:40 -07:00
pyproject.toml Merge branch 'stable' 2025-11-17 10:03:42 -08:00
README.md svg logo 2025-06-12 13:46:49 -07:00
uv.lock Merge branch 'stable' 2025-11-17 09:45:56 -08:00

Flask

Flask is a lightweight WSGI web application framework. It is designed to make getting started quick and easy, with the ability to scale up to complex applications. It began as a simple wrapper around Werkzeug and Jinja, and has become one of the most popular Python web application frameworks.

Flask offers suggestions, but doesn't enforce any dependencies or project layout. It is up to the developer to choose the tools and libraries they want to use. There are many extensions provided by the community that make adding new functionality easy.

A Simple Example

# save this as app.py
from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello, World!"
$ flask run
  * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

Donate

The Pallets organization develops and supports Flask and the libraries it uses. In order to grow the community of contributors and users, and allow the maintainers to devote more time to the projects, please donate today.

Contributing

See our detailed contributing documentation for many ways to contribute, including reporting issues, requesting features, asking or answering questions, and making PRs.