Skip to content

Clarify difference between PETSc-style and argparse-style CLI options #46

@gthyagi

Description

@gthyagi

Underworld currently uses PETSc-style command-line argument conventions, such as -uw_lc, where:

-uw_lc 0.02

This matches PETSc’s options database style (single dash followed by a descriptive name). However, the broader Python ecosystem uses standard argparse conventions where:
• long options are prefixed with double dashes (--option)
• short options use single dash with a single character (-o)
• hyphens (not underscores) separate words

For example, in argparse it would normally be:

--lc 0.02
--run-on-gadi

Request:
Please add a clear explanation in the documentation (and CLI help) that Underworld follows PETSc-style single-dash long options, and how that differs from argparse-style options. This could cover:
• Why single-dash long options like -uw_lc are used (because they tie into PETSc’s options database).
• That standard Python tools expect double dashes (--) for long options.
• How users should write scripts and examples that correctly parse Underworld options.
• A note for AI/automation tools so they generate correct CLI invocations.

Metadata

Metadata

Assignees

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