Skip to content

Releases: PrefectHQ/prefect

3.1.10.dev3: Nightly Development Release

24 Dec 08:07
8d506b2
Compare
Choose a tag to compare

What's Changed

Bug Fixes 🐞

  • Remove FastAPI from prefect.flow's default import path. by @aaazzam in #16473

Development & Tidiness 🧹

Documentation 📓

Full Changelog: 3.1.10.dev2...3.1.10.dev3

3.1.10.dev2: Nightly Development Release

22 Dec 08:06
46c6164
Compare
Choose a tag to compare

What's Changed

Integrations & Dependencies 🤝

Full Changelog: 3.1.10.dev1...3.1.10.dev2

3.1.10.dev1: Nightly Development Release

21 Dec 08:06
6f5d463
Compare
Choose a tag to compare

What's Changed

Development & Tidiness 🧹

Full Changelog: 3.1.9...3.1.10.dev1

3.1.9: All I Want for Christmas is Queue

20 Dec 21:47
e1fe794
Compare
Choose a tag to compare

What's Changed

Enhancements ➕➕

  • Log exceptions when run submission fails in both the runner and worker by @cicdw in #16424
  • Refactor prefect.flow decorator by @mjpieters in #16405

Bug Fixes 🐞

Integrations & Dependencies 🤝

Development & Tidiness 🧹

Documentation 📓

Full Changelog: 3.1.8...3.1.9

3.1.9.dev3: Nightly Development Release

20 Dec 08:07
7bf7697
Compare
Choose a tag to compare
Pre-release

What's Changed

Enhancements ➕➕

  • Log exceptions when run submission fails in both the runner and worker by @cicdw in #16424

Integrations & Dependencies 🤝

Development & Tidiness 🧹

Documentation 📓

Full Changelog: 3.1.9.dev2...3.1.9.dev3

2.20.16: Back to the 2.x Future

19 Dec 18:59
b504795
Compare
Choose a tag to compare

What's Changed

Bug Fixes 🐞

Integrations & Dependencies 🤝

Full Changelog: 2.20.15...2.20.16

3.1.9.dev2: Nightly Development Release

19 Dec 08:07
6343036
Compare
Choose a tag to compare
Pre-release

What's Changed

Integrations & Dependencies 🤝

Development & Tidiness 🧹

Documentation 📓

  • Add an example for creating an automation to mark zombie flow runs as crashed by @desertaxle in #16425
  • Add a tutorial showing how to set up an email alert in Prefect Cloud by @daniel-prefect in #16345

Uncategorized

  • Wrap OTLPLogExporter and OTLPSpanExporter in a QueueService to pull them out of the main thread by @bunchesofdonald in #16439
  • Add redis causal ordering implementation by @zangell44 in #16416

Full Changelog: 3.1.9.dev1...3.1.9.dev2

3.1.9.dev1: Nightly Development Release

18 Dec 08:07
068ea22
Compare
Choose a tag to compare
Pre-release

What's Changed

Bug Fixes 🐞

  • fix passing enforce_parameter_schema in prefect deploy by @zzstoatzz in #16418

Full Changelog: 3.1.8...3.1.9.dev1

3.1.8: A Tale of Two Features

17 Dec 19:27
53a83eb
Compare
Choose a tag to compare

What's Changed

Runner Heartbeats for Flow Run Monitoring

Flow runs can now emit heartbeat events to detect infrastructure failures (crashed machines, evicted containers, etc). When enabled, an automation can automatically mark flows as crashed when heartbeats stop, preventing stuck "zombie" flows in the running state.

Enable with:

  • Set PREFECT_RUNNER_HEARTBEAT_FREQUENCY (requires Prefect 3.1.8+)
  • Deploy the provided automation script to update flow states when heartbeats stop
from prefect.automations import Automation
from prefect.client.schemas.objects import StateType
from prefect.events.actions import ChangeFlowRunState
from prefect.events.schemas.automations import EventTrigger, Posture

my_automation = Automation(
    name="Crash zombie flows",
    trigger=EventTrigger(
        after={"prefect.flow-run.heartbeat"},
        expect={
            "prefect.flow-run.heartbeat",
            "prefect.flow-run.Completed",
            "prefect.flow-run.Failed",
            "prefect.flow-run.Cancelled",
            "prefect.flow-run.Crashed",
        },
        match={"prefect.resource.id": ["prefect.flow-run.*"]},
        for_each={"prefect.resource.id"},
        posture=Posture.Proactive,
        threshold=1,
        within=90,
    ),
    actions=[
        ChangeFlowRunState(
            state=StateType.CRASHED,
            message="Flow run marked as crashed due to missing heartbeats.",
        )
    ],
)

my_automation.create()

Basic Authentication

We have also added a long requested feature: basic authentication support for the Prefect API. Enable by setting an auth string:

Start a protected server:

PREFECT_SERVER_API_AUTH_STRING="admin:admin" prefect server start

Authenticate client operations:

PREFECT_API_AUTH_STRING="admin:admin" python flow_script.py

Enhancements ➕➕

Integrations & Dependencies 🤝

Documentation 📓

Full Changelog: 3.1.7...3.1.8

3.1.8.dev1: Nightly Development Release

17 Dec 08:07
9af5624
Compare
Choose a tag to compare
Pre-release

What's Changed

Enhancements ➕➕

  • Add working implementation of basic auth to server and client by @cicdw in #16408

Documentation 📓

Full Changelog: 3.1.7...3.1.8.dev1