Skip to content

feature: User friendly way to notify a lifecycle violation in the runtime #1091

@gbin

Description

@gbin

Problem statement

Today we have several levels of APIs for the runtime that allows a full control from the user of the framework over the lifecycle of it.

The issue is that the user can put the stack in a bad state without noticing: for example calling start_all_tasks twice or mixing it with application.run

Proposed solution

Add a small enum based state machine to track the validity of those lifecycle changes and emit an error accordingly.

Alternatives considered (optional)

Make that debug only but this should be so small it might not worth it

Impact / scope (optional)

  • Affected crates, platforms, or features:

Additional context (optional)

Metadata

Metadata

Assignees

No one assigned
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions