Releases: litestar-org/litestar
v2.5.2
❤️ Sponsors ❤️
GitHub Sponsors: Scalar, Telemetry Sports (via @chris-telemetry), Stok (@stok-team), @benjamin-kirkbride, @crisog, @geeshta, @cbscsm
OpenCollective: Christian Y, Anonymous
What's changed
Bugfixes
- Fix #2549: Ensure
MultiDict
andImmutableMultiDict
copy methods return the instance's type by @provinzkraut in #3009 - Fix #3029: Add
exceptiongroup
as a dependency for Python < 3.11 by @JeanArhancet in #3035
Other changes
- Remove duplicated type hints by @rosstitmarsh in #3002
- Don't define multipart extractor inline by @provinzkraut in #3005
- Remove redundant
None
check by @provinzkraut in #3006 - Fix
create_async_test_client
docstring by @cbscsm in #3015
Documentation
- Fix incorrect argument name in OpenApi ResponseSpec example by @korneevm in #3017
- Fix reference and indentation for
AbstractAuthenticationMiddleware
usage docs by @mj0nez in #2986
New contributors
- @korneevm made their first contribution in #3017
- @rosstitmarsh made their first contribution in #3002
- @JeanArhancet made their first contribution in #3035
Full Changelog
v2.5.1...v2.5.2
v2.5.1
❤️ Sponsors ❤️
GitHub Sponsors: Scalar, Telemetry Sports (via @chris-telemetry), Stok (@stok-team), @benjamin-kirkbride, @crisog, @geeshta, @cbscsm
OpenCollective: Christian Y, Anonymous
What's changed
🎉 New contributors 🎉
Bugfixes 🐛
- Fix OpenAPI schema generation for Union of multiple
msgspec.Structs
andNone
by @provinzkraut in #2982 - Fix misleading error message for missing dependencies provide by a package extra @horo-fox in #2921
- Fix OpenAPI file upload schema by @guacs in #2745
Docs 📚
- docs: fix code block in docstring by @wer153 in #2965
- docs: fix typo for dto-tutorial/01-simple-dto-exclude by @jrycw in #2959
Full Changelog
v2.5.0...v2.5.1
v2.5.0
❤️ Sponsors ❤️
GitHub Sponsors: Scalar, Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
What's Changed
Bugfixes
- Fix #2867: Fix serialization of custom types in exception responses by @provinzkraut in #2941
- Fix #2877: SSE reverts to default
event_type
after 1st message sentby @euri10 in #2888 - Fix #2939: Correctly handle single file upload validation when multiple files are specified by @guacs in #2950
- Fix trailing messages after unsubscribes in channels by @provinzkraut in #2894
New features
- Channels: Add Postgres backends by @provinzkraut in #2803
- CLI: Add
--schema
and--exclude
option tolitestar route
command by @andrewdoh in #2886
Other changes
- Improve performance of threaded synchronous calls by @provinzkraut in #2937
New Contributors
- @jseop-lim made their first contribution in #2935
- @FergusMok made their first contribution in #2945
- @manusinghal19 made their first contribution in #2948
Full Changelog: v2.4.5...v2.5.0
v2.4.5
❤️ Sponsors ❤️
GitHub Sponsors: Scalar, Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
What's Changed
Bugfixes
- Fix validation of empty payload data with default values by @peterschutt in #2903
- Support for returning
Response[None]
with a204
status code from a handler by @peterschutt in #2915 - Fix error message of
get_logger_placeholder()
by @cbscsm in #2919
New Contributors
- @ashm-tech made their first contribution in #2918
- @wer153 made their first contribution in #2920
- @cbscsm made their first contribution in #2919
Full Changelog: v2.4.4...v2.4.5
v2.4.4
❤️ Sponsors ❤️
GitHub Sponsors: Scalar, Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
🎉 New Contributors 🎉
- @elliotwaite made their first contribution in #2882
What's Changed
Bugfixes 🐛
- DTOs: Support non-valid identifiers as serialization names by @peterschutt in #2850
- DTOs: Fix regression signature validation for DTO validated types by @peterschutt in #2854
- OpenAPI: Fix regression in components schema key names by @peterschutt in #2841
- OpenAPI: Fix regression in handling of routes with multiple handlers by @guacs in #2864
- OpenAPI: Fix schema generation for nested models by @peterschutt in #2869
Documentation updates 📚
- Name the static files handler by @guacs in #2871
- Ensure
csrf_input
doesn't get escaped by @guacs in #2872 - Sponsors update by @JacobCoffee in #2865
- Fix
headers
type annotations in docs by @elliotwaite in #2882 - Fix
run_in_background
usage in channels documentation by @euri10 in #288
Full Changelog: v2.4.3...v2.4.4
v2.4.3
❤️ Sponsors ❤️
GitHub Sponsors: Scalar, Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
🎉 New Contributors 🎉
- @hzhou0 made their first contribution in #2818
- @WilliamStam made their first contribution in #2724
What's Changed
Fixes 🔧
- Fix OpenAPI schema for
Literal | None
unions (#2812) by @hzhou0 in #2818 - Fix advanced-alchemy 0.6.0 compatibility issue with
touch_updated_timestamp
by @cofin in #2843
Full Changelog: v2.4.2...v2.4.3
v2.4.2
❤️ Sponsors ❤️
GitHub Sponsors: Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
What's Changed
- Fix OpenAPI handling of parameters with duplicated names by @peterschutt in #2788
- Fix late failure where
DTOData
is used without a DTO by @peterschutt in #2789 - Correctly propagate camelCase names on OpenAPI schema by @peterschutt in #2800
- Fix error handling in event handler stream by @peterschutt in #2810 and #2814
- Fix OpenAPI schema for pydantic computed fields by @peterschutt in #2797
New Contributors
- @elliot-hall made their first contribution in #2796
Full Changelog: v2.4.1...v2.4.2
v2.4.1
❤️ Sponsors ❤️
GitHub Sponsors: Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
Bugfixes 🐛
- Fix circular import when importing from
litestar.security.jwt
by @peterschutt in #2784 - Raise config error when generator dependencies are cached by @peterschutt in #2780
Full Changelog: v2.4.0...v2.4.1
v2.4.0
❤️ Sponsors ❤️
GitHub Sponsors: Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
What's Changed
- View the Litestar Release Notes
🎉 New Contributors 🎉
- @leejayhsu made their first contribution in #2639
- @mbeijen made their first contribution in #2633
- @baoliay2008 made their first contribution in #2670
- @jdglaser made their first contribution in #2676
- @hunterjsb made their first contribution in #2710
- @cesarmg1980 made their first contribution in #2749
- @marcuslimdw made their first contribution in #2757
Bugfixes 🐛
- Fix
HTTPException
handling during concurrent dependency resolving by @smithk86 in #2596 - Fix CLI plugin commands not showing up in command list by @peterschutt in #2441
- Fix OpenAPI examples format by @guacs in #2660
- Fix OpenAPI schemas incorrectly flagged as duplicates by @chris-telemetry in #2475
- Fix OpenAPI schema generation partially broken since litestar version 2.3.0 by @Alc-Alc in #2648
- Fix Pydantic URL type support in OpenAPI and serialization by @provinzkraut in #2701
- Fix incorrect
ValidationException
message when multiple errors were encountered by @peterschutt in #2716 - Fix missing
write-only
mark indto_field()
signature by @floxay in #2684 - Fix DTO renaming renames all fields of the same name in nested DTOs by @provinzkraut in #2764
- Fix handling of DTO objects nested in mappings by @peterschutt in #2775
- Fix inconsistent sequence union parameter errors by @peterschutt in #2776
- Fix
Unexpected ASGI message 'websocket.close', after sending 'websocket.close'
in channels WebSocket handlers by @peterschutt in #2691
Features 🔧
- Add
server_lifespan
hook by @cofin in #2658 - Add
template_str
for rendering from strings by @JacobCoffee in #2689 - Deprecate
litestar.contrib.piccolo
by @cofin in #2704 - Improve ASGI extension interface by @provinzkraut in #2756
- Support nested DTO field renaming by @provinzkraut in #2764
Other Changes
- Expose
advanced-alchemy
atlitestar.plugins.sqlalchemy
by @cofin in #2654 - Move
contrib.jwt
tosecurity.jwt
by @cofin in #2646 - Correctly raise
WebSocketDisconnect
inWebSocket.receive()
by @peterschutt in #2690
Full Changelog: v2.3.2...v2.4.0
v2.3.2
❤️ Sponsors ❤️
GitHub Sponsors: Telemetry Sports (via @chris-telemetry) @benjamin-kirkbride @crisog @geeshta
OpenCollective: Christian Y, Anonymous
What's Changed
- fix(router): fix reference cycle in node validation by @provinzkraut in #2630
New Contributors
Full Changelog: v2.3.1...v2.3.2