Skip to content

Supporting explicit and implicit registration of providers #397

Closed
1 of 1 issue completed
Closed

Description

@knoepfel

With Phlex v0.1.0, data-product providers are explicitly registered based on which sources are loaded. Some providers may not be used if there is no downstream algorithm that requires the data products from that provider.

This approach is not sufficient. When reading framework files (e.g., as produced by FORM), it is impractical to explicitly create providers for all data products within that file. Instead, there should be a mechanism that implicitly registers providers based on the data products required by the data-flow graph.

There will likely be cases where both explicitly-created and implicitly-created providers need to be used in the same job. We should discuss this.

Activity

  1. changed the title [-]Supporting both eager and lazy providers[/-] [+]Supporting both eager and lazy registration of providers[/+] on Mar 9, 2026
  2. changed the title [-]Supporting both eager and lazy registration of providers[/-] [+]Supporting eager and lazy registration of providers[/+] on Mar 9, 2026
  3. knoepfel commented on Mar 11, 2026

    @knoepfel
    MemberAuthor

    Agreement:

    1. Providers attached to an input source will be automatically registered for any data products that cannot be provided by an explicit provider or a computational node.
    2. We need to allow users to indicate a precedence of looking up data products from different stages.
  4. changed the title [-]Supporting eager and lazy registration of providers[/-] [+]Supporting explicit and implitic registration of providers[/+] on Mar 11, 2026
  5. changed the title [-]Supporting explicit and implitic registration of providers[/-] [+]Supporting explicit and implicit registration of providers[/+] on Mar 11, 2026
  6. knoepfel commented on Oct 2, 2026

    @knoepfel
    MemberAuthor

    Support for explicit and implicit provider registration is implemented, completing #630. During graph construction, required inputs are resolved against computational producers and explicit providers first; configured input sources are then asked to create implicit providers for any unresolved inputs. Both provider types can participate in the same job.

    User-specifiable precedence for looking up data products from different stages remains outstanding and is tracked in #631. Closing this issue as resolved for provider-registration support; continued work on stage-lookup precedence belongs in #631.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    execution graphHow the graph is established and executed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions