Releases: Neoteroi/BlackSheep
Releases · Neoteroi/BlackSheep
v1.2.10
v2.0.0-alpha
- Renames the
plugins
namespace tosettings
- Upgrades
rodi
to v2, which includes improvements. - Adds support for alternative implementation of containers for dependency
injection, using the newContainerProtocol
inrodi
. - Upgrades
guardpost
to v1, which includes support for
dependency injection in authentication handlers and authorization requirements. - Adds support for Binders instantiated using dependency injection. However,
binders are still instantiated once per request handler and are still
singletons. - Adds a method to make the
Request
object accessible through dependency
injection (register_http_context
). This is not a recommended practice,
but it can be desired in some circumstances. - Removes the direct dependency on
Jinja2
and adds support for alternative
ways to achieve Server Side Rendering (SSR) of HTML; however,Jinja2
is still
the default library if the user doesn´t specify how HTML should be rendered. - Adds options to control
Jinja2
settings through environment variables. - Removes the deprecated
ServeFilesOptions
class.
v1.2.9
- Fix invalid OpenAPI doc for route parameter with pattern (#286) - antipooh's contribution.
- Fix a bug related to nullable boolean values 363616b jack-fireworkhq's contribution.
- Fix a bug preventing web sockets from working when CORS is enabled (#296) - reported by netwang on gitter.
v1.2.8
v1.2.7
- Fixes #257 (bug causing OpenAPI Documentation handler to fail on app start when using PEP 585)
- Adds support for PEP 604 (T | None) for binders and OpenAPI Documentation
- Corrects a bug related to handling of optional parameters and
nullable
value in schemas generated for OpenAPI Documentation V3 - Verifies in tests that
Annotated
is supported by BlackSheep - Corrects the capitalization of "ApiController" to be "APIController", still keeping the first name for backward compatibility
v1.2.6
- Improves support for pydantic, and uses
ValidationError.json()
(#249) - Fixes bug related to improper handling of
multipart
form data when usingFromForm
, and another bug related to using bothFromFiles
andFromForm
in the same request handler (#248) - Fixes bug related to the static files handling overriding the router fallback route and 404 exception handler (#253).
- Adds support for configuring the Internal Server Error 500 handler for unhandled exceptions (#247)
- Adds built-in HSTS middleware to configure Strict-Transport-Security
v1.2.5
- Improves WebSocket to handle built-in exception types: Unauthorized, HTTPException
- Adds built-in support for Anti Forgery validation to protect against Cross-Site Request Forgery (XSRF/CSRF) attacks
- Modifies the Request and Response classes to support weak references
- Adds the possibility to use
**kwargs
in view functions, returning HTML built
using Jinja2 - Adds support for automatic handling of child application events when BlackSheep
applications are mounted into a parent BlackSheep application - Adds support for OpenAPI Documentation generated for children BlackSheep apps,
when using mounts - Corrects bugs that prevented mounted routes to work recursively in descendants
- Updates dependencies
v1.2.4
- Modifies the
WebSocket
class to support built-in binders available for HTTP Requests (the instance of WebSocket is created from the handshake GET request) - Re-exports the most common types from the
blacksheep
module to reduce
the verbosity of import statements
v1.2.3
Adds support for WebSocket.
Thanks to @Klavionik for his wonderful contributions and for implementing WebSocket support in the framework! 🎉
v1.2.2
- Fixes wrong mime type in OpenAPI Documentation for the
form
binder (#212) - Adds
OpenAPIEvents
to the class handling the generation of OpenAPI Documentation - Updates default environment variable prefix for app secrets to be
APP_SECRET
instead ofAPPSECRET
(also accepts the value without underscore for backward
compatibility) - Adds missing server import to
blacksheep/__init__.pyi