Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: major overhaul of API #9

Merged
merged 1 commit into from
Jun 3, 2024
Merged

refactor: major overhaul of API #9

merged 1 commit into from
Jun 3, 2024

Commits on Jun 3, 2024

  1. refactor: major overhaul of API

    This refactor overhauls the API in preparation for v1.0.0.
    
    Following major changes have been applied:
    - Users now implement the Executor interface, instead of the Command
      interface. The Command object is now the container for a single
      command, created via the "New" factory.
    - Configuration schema is read from the given Executor instance's type.
      Any field in that struct can be a potential flag or args target. The
      API now allows customization of such flags via struct field tags (to
      be documented). Configuration can be nested in multi-level structs for
      grouping and reuse.
    - Commands can also be created via "MustNew" which panics if command
      creation fails.
    - Better command hierarchy with clear definition of which flags are
      inherited from parent commands to child commands.
    - Improved help & usage screens
    - Better code & file structure
    - Add golang CI linting
    arikkfir committed Jun 3, 2024
    Configuration menu
    Copy the full SHA
    88e5df1 View commit details
    Browse the repository at this point in the history