Skip to content

Factorize runner implementations #28

Open

Description

It should be easy to write a runner for a board similar to an already supported board.

This could be done in 2 non-exclusive ways:

  1. The runner is generic and configurable by the applets. The applet may describe which devices are present and how they are configured.
  2. Runners are small binaries relying on multiple composable libraries. There would be a library per architecture, per PAC, per HAL, per device, etc.

In the first case, a user with a custom board may only have to write an applet responsible for both configuring the runner and the actual business logic. In the second case, they would need to split the code into a small runner responsible for describing the board and the applet responsible for the business logic. Both approaches may be mixed, for example what is soldered may need to be described in the runner, while what can be more easily added and removed would be configured in the applet.

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

Metadata

Assignees

No one assigned

    Labels

    crate:boardModifies the board APIfor:usabilityImproves users (and maintainers) lifeneeds:designNeeds design to make progress

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions