View Source Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

v0.1.3 (2024-10-18)

  • Support providing repeating arguments with a separator. If you set the separator option for an argument's schema you can pass the values in the format --arg value1<sep>value2. For example, for the following schema:

    schema = [
      name: [
        type: :string,
        multiple: true,
        separator: ";" 
      ]

    all of the following invocation are valid and equivalent:

    # passing the arg multiple times  
    $ mix foo --name john --name jack --name paul
    
    # passing the arg once with the values separated with ;
    $ mix foo --name john;jack;paul
    
    # a combination of the above
    $ mix foo --name john --name jack;paul

v0.1.2 (2024-07-12)

Added

  • Support getting option value from an environment variable, through the :env option. Used only if not provided by the user in the CLI arguments.

  • Support grouping options in the docs by section. You can now specify the :doc_section to any option, and pass a :sections option in the CliOptions.docs/2 function for the headers and extended docs of each section.

v0.1.1 (2024-07-04)

Added

  • If an option is set with doc: false it is not included in docs.
  • Support deprecating options with :deprecated.

v0.1.0 (2024-05-13)

Initial release.