Skip to content

Extension packages #246

@sshin23

Description

@sshin23

We are starting to see several extension packages emerging (e.g., two-stage models #244 and models with external oracles #243), which is great to see. As the ecosystem grows, it might be worth thinking about how to structure these extensions so that ExaModels itself remains lightweight and maintainable in the long run.

One possible approach could be:

  • Separate extension packages from the main ExaModels repo and host them elsewhere. We could follow something similar to the MadNLP approach, where extensions live in a /lib directory, or maintain them as separate repositories.
  • Extensions approved/coordinated by ExaModels core developers could be granted a naming convention such as TwoStageExaModels or ExaModelsWithOracle.
  • Optionally, we could add breakage checks for extension packages, similar to
    https://github.com/JuliaSmoothOptimizers/NLPModels.jl/blob/main/.github/workflows/breakage.yml

Curious to hear your thoughts.

@michel2323 @andrewrosemberg

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions