Swift Argument Parser v1.1.4 Release Notes

Release Date: 2022-08-26 // about 1 month ago
  • ๐Ÿ”„ Changes

    • 0๏ธโƒฃ The generate-manual plugin now defaults to creating single page manuals. The --single-page flag has been replaced with --multi-page to restore the previous default functionality. ([#472])

    Migration: Update scripts that invoked generate-manual without --single-page to include --multi-page and update scripts that invoked generate-manual with --single-page to omit the flag.

    • ๐Ÿšš The "experimental" prefix from the generate-manual plugin has been removed. ([#475])

    Migration: Update scripts to invoke the generate manual plugin via swift package generate-manual instead of swift package plugin experimental-generate-manual.

    ๐Ÿ›  Fixes

    • ๐Ÿ”Œ The generate-manual plugin is correctly declared as a product, making the plugin visible to clients. ([#456])
    • ๐Ÿ”Œ The generate-manual plugin's --authors arguments are now correctly passed to the underlying generation tool. ([#471])
    • ๐Ÿ”Œ Manuals generated by the generate-manual plugin now include the option's value names and do not include value names for flags. ([#473])
    • Built-in flags such as --help and --version are now correctly marked as optional fixing some generated content which indicated the flags are always required. ([#474])
    • Value descriptions are now correctly derived for types which are ExpressibleByArgument and RawRepresentable by String. Help menus will now display valid default values for such types. ([#476])

    ๐Ÿš€ The 1.1.4 release includes contributions from [ian-twilightcoder], [MarcoEidinger], and [rauhul]. Thank you!


Previous changes from v1.1.3

  • โž• Additions

    • ๐Ÿ”Œ ArgumentParser now includes a SwiftPM plugin for generating man pages. Explore the functionality and configuration by running swift package plugin experimental-generate-manual --help from your package root. ([#332])

    ๐Ÿ›  Fixes

    • Hidden subcommands are now excluded from completion scripts. ([#443])
    • When an invalid value is provided for a CaseIterable type, the error message now includes a list of valid inputs. ([#445])
    • There's now a diagnostic when an AsyncParsableCommand is incorrectly placed under a non-async root command. ([#436])

    ๐Ÿš€ The 1.1.3 release includes contributions from [keith], [KeithBird], [konomae], [LucianoPAlmeida], and [rauhul]. Thank you!