Skip to content

[4.5] Expose AsyncRefresh capabilities #429

@halcy

Description

@halcy

4.5 adds a new AsyncRefresh header and endpoint. We need to expose this somehow.

First draft plan:

  1. Base entity type gets AsyncRefresh info. We add a function to retrieve this info. This is the most baseline support possible.
  2. Add the asyncrefresh endpoint. I think this is best implemented barebones-ish: Pass in an asyncrefresh ID, get out a non-typed dict, pass in a typed dict, get out a typed dict with the asyncrefresh results, throws if not set.
  3. Add an additional function that does the asyncrefresh fetch if present, no-op if not (typed dicts only!), respects the provided backoff time, tries again if there's another asyncrefresh header, until all the refreshing is done. This is the default behaviour, can be turned of by arguments as needed.

Comments welcome.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions