diff --git a/.buildinfo b/.buildinfo index 9449f01..97c14f3 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file records the configuration used when building these files. When it is not found, a full rebuild will be done. -config: c08221e9f0bc76c34b3bf9a7331fe62a +config: c4ffdc22e8e2f024e32bdac6fd7533c9 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/changes.doctree b/.doctrees/changes.doctree index 5b2f0b2..582c384 100644 Binary files a/.doctrees/changes.doctree and b/.doctrees/changes.doctree differ diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle index 51e5f22..7ae0fc2 100644 Binary files a/.doctrees/environment.pickle and b/.doctrees/environment.pickle differ diff --git a/_modules/index.html b/_modules/index.html index abd1a7a..5fe0c40 100644 --- a/_modules/index.html +++ b/_modules/index.html @@ -4,13 +4,13 @@
-
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
-Built-in structured logging with per-request context (enable_logging=True)
api.log — always-available logger, enriched with request context when logging is enabled
Automatic access logging with timing: GET /path → 200 (1.2ms)
Request ID generation/forwarding via X-Request-ID header
contextvars-based request context (ID, method, path, client IP) on every log record
responder.ext.logging module: get_logger(), RequestContext, RequestContextFilter
CLAUDE.md project guide and /release command
Version number in docs sidebar
Comprehensive documentation improvements across all pages
+Deployment: health checks, Docker Compose, Caddy, Procfile, production checklist
API reference: usage examples for every class
Feature tour: Pydantic validation, content negotiation, structured logging sections
Tutorials: modernized SQLAlchemy to mapped_column(), fixed deprecated datetime.utcnow(),
+WebSocket WebSocketDisconnect handling, role-based auth, auth strategy guide
Testing: rate limiting and WSGI mount examples
Middleware: pure ASGI middleware example
Quickstart: links to all tutorials
Sandbox: full rewrite with project layout
Docker example uses uv instead of pip
Backlog updated: removed implemented features, replaced HTTP/2 server push with dependency injection
uv.lock — this is a library, not an application
CI validation for Python 3.14, 3.14 free-threaded, and PyPy 3.11
Marimo notebook mounting docs and example
Type annotations for routes.py
Replaced deprecated asyncio.iscoroutinefunction with inspect.iscoroutinefunction ahead of Python 3.16 removal
Narrowed broad except Exception to specific exceptions in response model serialization and websocket chat example
Read the Docs configuration (docs hosted on GitHub Pages)
Upgraded to Starlette 1.0
Added comprehensive docstrings across the codebase
Full documentation rewrite: tutorials for REST APIs, SQLAlchemy, Flask migration
Auth, WebSocket, middleware, and configuration guides
Reworked homepage prose
Rewrote CLI and API reference docs
Pydantic auto-validation: request_model validates input, returns 422 on failure
Pydantic auto-serialization: response_model strips extra fields from responses
Dependencies flattened: pip install responder gets everything
Core deps reduced to starlette + uvicorn
Multipart parser losing headers when parts have multiple headers
url_for() with typed route params ({id:int})
Platform: Added support for Python 3.10 - Python 3.13
CLI: responder run now also accepts a filesystem path on its <target>
@@ -168,8 +213,8 @@ argument, enabling usage on single-file applications.
CLI: responder run now also accepts URLs.
Platform: Minimum Python version is now 3.9 (dropped 3.6, 3.7, 3.8)
Dependencies: Dramatically reduced core dependency count (10 → 5)
@@ -191,8 +236,8 @@ extensions now, found within thePackaging: Migrated from setup.py to declarative pyproject.toml
Platform: Removed support for EOL Python 3.6, 3.7, 3.8
Status codes: Removed deprecated resume_incomplete and resume
@@ -200,8 +245,8 @@ aliases for HTTP 308 (marked for removal in 3.0)
CLI: responder run --build ceased to exist
Routing: Fixed dispatching static_route=None on Windows
uvicorn: --debug now maps to uvicorn’s log_level = "debug"
Update requirements to support python 3.8
Fix static app resolving
Fix template conflicts
Fix template conflicts
Fix template import
Refactor Router and Schema
ASGI 3 support
CI tests for python 3.8-dev
Route params Converters
Add search for documentation pages
Bump dependencies
Versioning issue
Multiple cookies.
Other bugfixes.
Stream support via resp.stream.
Cookie directives via resp.set_cookie.
Refactor _route_for
Resolve startup/shutdwown events
Documentations
Use Starlette’s LifeSpan middleware
Update denpendencies
Fix route.is_class_based
Fix test_500
Minor fixes for Open API
Typos
Run sync views in a threadpoolexecutor.
Support for before_request.
Fix sessions.
Potential bufix for cookies.
Bugfix for redirects.
Improvement for static file hosting.
Improve cors configuration settings.
Move GraphQL support into a built-in plugin.
CORS support
Improved exceptions.
Subtle improvements.
Packaging fix.
Interactive Documentation endpoint.
Minor improvements.
Overall improvements.
Show traceback info when background tasks raise exceptions.
api.requests.
WebSocket support.
500 support.
File upload support
Improvements to sequential media reading.
Stability.
Sessions support.
Cookies support.
Default routes.
Prototype of static application support.
Bugfix for async class-based views.
Bugfix for async class-based views.
GraphiQL Support.
Improvement to route selection.
Immutable Request object.
Ability to mount WSGI apps.
Supply content-type when serving up the schema.
OpenAPI Schema support.
Safe load/dump yaml.
Asynchronous support for data uploads.
Bug fixes.
Bug fixes.
Switch to ASGI/Starlette.
Conception!
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Host
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Useful Links
diff --git a/tour.html b/tour.html
index d589b79..3f733f6 100644
--- a/tour.html
+++ b/tour.html
@@ -5,13 +5,13 @@
- Feature Tour — responder 3.5.0 documentation
+ Feature Tour — responder 3.6.0 documentation
-
+
@@ -732,7 +732,7 @@ bodies by passing &
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Useful Links
diff --git a/tutorial-auth.html b/tutorial-auth.html
index 2a4660a..db5d36c 100644
--- a/tutorial-auth.html
+++ b/tutorial-auth.html
@@ -5,13 +5,13 @@
- Authentication — responder 3.5.0 documentation
+ Authentication — responder 3.6.0 documentation
-
+
@@ -289,7 +289,7 @@ sessions for web apps with login pages.
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Useful Links
diff --git a/tutorial-flask.html b/tutorial-flask.html
index 644b150..9ac6200 100644
--- a/tutorial-flask.html
+++ b/tutorial-flask.html
@@ -5,13 +5,13 @@
- Migrating from Flask — responder 3.5.0 documentation
+ Migrating from Flask — responder 3.6.0 documentation
-
+
@@ -253,7 +253,7 @@ Responder. When you’ve moved everything over, remove the mount.
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Useful Links
diff --git a/tutorial-middleware.html b/tutorial-middleware.html
index 3a395de..dd8d812 100644
--- a/tutorial-middleware.html
+++ b/tutorial-middleware.html
@@ -5,13 +5,13 @@
- Writing Middleware — responder 3.5.0 documentation
+ Writing Middleware — responder 3.6.0 documentation
-
+
@@ -210,7 +210,7 @@ middleware when hooks aren’t enough.
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Useful Links
diff --git a/tutorial-rest.html b/tutorial-rest.html
index eba0ccd..e144961 100644
--- a/tutorial-rest.html
+++ b/tutorial-rest.html
@@ -5,13 +5,13 @@
- Building a REST API — responder 3.5.0 documentation
+ Building a REST API — responder 3.6.0 documentation
-
+
@@ -255,7 +255,7 @@ with Responder using the lifespan pattern.
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Useful Links
diff --git a/tutorial-sqlalchemy.html b/tutorial-sqlalchemy.html
index 63e9dfb..c0771a8 100644
--- a/tutorial-sqlalchemy.html
+++ b/tutorial-sqlalchemy.html
@@ -5,13 +5,13 @@
- Using SQLAlchemy — responder 3.5.0 documentation
+ Using SQLAlchemy — responder 3.6.0 documentation
-
+
@@ -291,7 +291,7 @@ your database without losing data.
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0
Responder — a familiar HTTP service framework for Python.
- v3.5.0
+ v3.6.0