PrefectHQ
prefect
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Performance History
Latest Results
fix: handle RecursionError in Flow.serialize_parameters (#22245)
main
30 minutes ago
fix: handle RecursionError in Flow.serialize_parameters jsonable_encoder recurses into unknown objects with no cycle or depth limit, so a deeply-nested or self-referential parameter raises RecursionError. That is a RuntimeError, not TypeError/ValueError, so it escaped the existing placeholder fallback and crashed the flow run. Catch it too and fall back to the '<Type>' placeholder, same as any other unserializable value. Closes #22244
chuqCTC:fix/serialize-parameters-recursion-error
43 minutes ago
docs: add user-facing versioning and compatibility page (#22228)
main
3 hours ago
fix(server): URL-encode credentials in asyncpg LISTEN/NOTIFY DSN closes #22088 Raw string manipulation on the connection URL preserved unencoded special characters in passwords (#, ?, <), which broke asyncpg's internal urlsplit() and silently disabled LISTEN/NOTIFY. Use SQLAlchemy's render_as_string(hide_password=False) to percent-encode credentials. _normalize_asyncpg_dsn_query_params then collapses repeated multihost host= params, and asyncpg decodes the encoded values back when it parses the DSN. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
chuqCTC:fix/asyncpg-dsn-special-chars
7 hours ago
fix(runner): degrade events WebSocket on transient connection failures - EventEmitter only caught HTTP 4xx rejections (InvalidStatus), so a transient events-WebSocket failure (handshake timeout, dropped connection, network error) propagated out of FlowRunExecutorContext and crashed the flow run with exit(1) - add RETRYABLE_EXCEPTIONS (ConnectionClosed, TimeoutError, OSError) to _NONFATAL_CONNECTION_EXCEPTIONS so any connection failure degrades to NullEventsClient and the flow run continues; events are non-critical telemetry (the runner emits only prefect.runner.cancelled-flow-run) - reuse the events client's RETRYABLE_EXCEPTIONS so the retryable and non-fatal exception sets stay defined in one place - reword the degradation warning to fit both rejection and timeout; the client-upgrade hint is now conditional on server authentication - add parametrized tests for TimeoutError/OSError degradation and update runner AGENTS.md to document both failure classes
yukiyan:fix-event-emitter-timeout-crash
20 hours ago
Avoid parametrizing server state schema
alexs/oss-7942-oss-07-oss-cancelling-timeout-producer
3 days ago
docs: document Cloud-only features and fix the Cloud badge (#22229)
main
3 days ago
fix(client): preserve IANA timezone names in RRuleSchedule.from_rrule() (#22232) Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Alex Streed <alex.s@prefect.io> Co-authored-by: alex.s <ajstreed1@gmail.com>
main
3 days ago
Latest Branches
CodSpeed Performance Gauge
0%
fix: handle RecursionError in Flow.serialize_parameters
#22245
57 minutes ago
e583c44
chuqCTC:fix/serialize-parameters-recursion-error
CodSpeed Performance Gauge
0%
fix(server): URL-encode credentials in asyncpg LISTEN/NOTIFY DSN
#22089
13 days ago
835a619
chuqCTC:fix/asyncpg-dsn-special-chars
CodSpeed Performance Gauge
0%
fix(runner): degrade events WebSocket on transient connection failures
#22241
22 hours ago
172cc6c
yukiyan:fix-event-emitter-timeout-crash
© 2026 CodSpeed Technology
Home
Terms
Privacy
Docs