@@ -8,14 +8,68 @@ This project follows semantic versioning. While still in major version `0`,
88source-stability is only guaranteed within minor versions (e.g. between
99` 0.0.3 ` and ` 0.0.4 ` ). If you want to guard against potentially source-breaking
1010package updates, you can specify your package dependency using
11- ` .upToNextMinor(from: "0.4 .0") ` as the requirement.
11+ ` .upToNextMinor(from: "0.5 .0") ` as the requirement.
1212
1313## [ Unreleased]
1414
1515* No changes yet.*
1616
1717---
1818
19+ ## [ 0.5.0] - 2021-09-02
20+
21+ ### Additions
22+
23+ - When a user doesn't provide a required argument, the error message now
24+ includes that argument's help text. ([ #324 ] )
25+ - Command-line tools built with ` ArgumentParser ` now include an experimental
26+ flag to dump command/argument/help information as JSON:
27+ ` --experimental-dump-help ` . ([ #310 ] )
28+
29+ ### Changes
30+
31+ - All public enumerations are now structs with static properties, to make
32+ compatibility with future additions simpler.
33+
34+ ### Fixes
35+
36+ - Array properties defined as ` @Option ` with the ` .upToNextOption ` parsing
37+ strategy now include all provided values. ([ #304 ] ) In the example below, all
38+ four values are now included in the resulting array, where only the last two
39+ were included in previous releases:
40+
41+ ``` swift
42+ struct Example : ParsableCommand {
43+ @Option (parsing: .upToNextOption )
44+ var option: [String ]
45+ }
46+ ```
47+ ```
48+ $ example -- option one two -- option three four
49+ ```
50+
51+ - When a command defines an array property as an `@Argument ` with the
52+ `.unconditionalRemaining ` parsing strategy, option and flag parsing now stops
53+ at the first positional argument or unrecognized flag. ([#333 ])
54+ - Completion scripts correctly use customized help flags. ([#308 ])
55+ - Fixes errors with bash custom completion arguments and the executable path.
56+ ([#320 ], [#323 ])
57+ - Fixes the behavior when a user specifies both the `help` subcommand and a help
58+ flag. ([#309 ])
59+ - A variety of internal improvements. ([#315 ], [#316 ], [#321 ], [#341 ])
60+
61+ The 0.5.0 release includes contributions from [atierian], [compnerd],
62+ [dirtyhabits97], [Frizlab], [KS1019], [natecook1000], and [rauhul]. Thank you!
63+
64+ ---
65+
66+ ## [0.4.4 ] - 2021 - 07 - 30
67+
68+ ### Fixes
69+
70+ - Includes a workaround for a runtime crash with certain `OptionGroup`
71+ configurations when a command is compiled in release mode.
72+
1973## [0.4.3 ] - 2021 - 04 - 28
2074
2175### Additions
@@ -461,7 +515,9 @@ This changelog's format is based on [Keep a Changelog](https://keepachangelog.co
461515
462516<!-- Link references for releases -->
463517
464- [ Unreleased ] : https://github.com/apple/swift-argument-parser/compare/0.4.3...HEAD
518+ [ Unreleased ] : https://github.com/apple/swift-argument-parser/compare/0.5.0...HEAD
519+ [ 0.5.0 ] : https://github.com/apple/swift-argument-parser/compare/0.4.4...0.5.0
520+ [ 0.4.4 ] : https://github.com/apple/swift-argument-parser/compare/0.4.3...0.4.4
465521[ 0.4.3 ] : https://github.com/apple/swift-argument-parser/compare/0.4.2...0.4.3
466522[ 0.4.2 ] : https://github.com/apple/swift-argument-parser/compare/0.4.1...0.4.2
467523[ 0.4.1 ] : https://github.com/apple/swift-argument-parser/compare/0.4.0...0.4.1
@@ -488,6 +544,19 @@ This changelog's format is based on [Keep a Changelog](https://keepachangelog.co
488544[ #256 ] : https://github.com/apple/swift-argument-parser/pull/256
489545[ #276 ] : https://github.com/apple/swift-argument-parser/pull/276
490546[ #290 ] : https://github.com/apple/swift-argument-parser/pull/290
547+ [ #299 ] : https://github.com/apple/swift-argument-parser/pull/299
548+ [ #304 ] : https://github.com/apple/swift-argument-parser/pull/304
549+ [ #308 ] : https://github.com/apple/swift-argument-parser/pull/308
550+ [ #309 ] : https://github.com/apple/swift-argument-parser/pull/309
551+ [ #310 ] : https://github.com/apple/swift-argument-parser/pull/310
552+ [ #315 ] : https://github.com/apple/swift-argument-parser/pull/315
553+ [ #316 ] : https://github.com/apple/swift-argument-parser/pull/316
554+ [ #320 ] : https://github.com/apple/swift-argument-parser/pull/320
555+ [ #321 ] : https://github.com/apple/swift-argument-parser/pull/321
556+ [ #323 ] : https://github.com/apple/swift-argument-parser/pull/323
557+ [ #324 ] : https://github.com/apple/swift-argument-parser/pull/324
558+ [ #333 ] : https://github.com/apple/swift-argument-parser/pull/333
559+ [ #341 ] : https://github.com/apple/swift-argument-parser/pull/341
491560
492561<!-- Link references for contributors -->
493562
@@ -496,16 +565,19 @@ This changelog's format is based on [Keep a Changelog](https://keepachangelog.co
496565[ aleksey-mashanov ] : https://github.com/apple/swift-argument-parser/commits?author=aleksey-mashanov
497566[ AliSoftware ] : https://github.com/apple/swift-argument-parser/commits?author=AliSoftware
498567[ artemnovichkov ] : https://github.com/apple/swift-argument-parser/commits?author=artemnovichkov
568+ [ atierian ] : https://github.com/apple/swift-argument-parser/commits?author=atierian
499569[ BradLarson ] : https://github.com/apple/swift-argument-parser/commits?author=BradLarson
500570[ buttaface ] : https://github.com/apple/swift-argument-parser/commits?author=buttaface
501571[ CodaFi ] : https://github.com/apple/swift-argument-parser/commits?author=CodaFi
502572[ compnerd ] : https://github.com/apple/swift-argument-parser/commits?author=compnerd
503573[ CypherPoet ] : https://github.com/apple/swift-argument-parser/commits?author=CypherPoet
504574[ damuellen ] : https://github.com/apple/swift-argument-parser/commits?author=damuellen
505575[ dduan ] : https://github.com/apple/swift-argument-parser/commits?author=dduan
576+ [ dirtyhabits97 ] : https://github.com/apple/swift-argument-parser/commits?author=dirtyhabits97
506577[ drewmccormack ] : https://github.com/apple/swift-argument-parser/commits?author=drewmccormack
507578[ elliottwilliams ] : https://github.com/apple/swift-argument-parser/commits?author=elliottwilliams
508579[ erica ] : https://github.com/apple/swift-argument-parser/commits?author=erica
580+ [ Frizlab ] : https://github.com/apple/swift-argument-parser/commits?author=Frizlab
509581[ glessard ] : https://github.com/apple/swift-argument-parser/commits?author=glessard
510582[ gmittert ] : https://github.com/apple/swift-argument-parser/commits?author=gmittert
511583[ griffin-stewie ] : https://github.com/apple/swift-argument-parser/commits?author=griffin-stewie
@@ -517,6 +589,7 @@ This changelog's format is based on [Keep a Changelog](https://keepachangelog.co
517589[ jonathanpenn ] : https://github.com/apple/swift-argument-parser/commits?author=jonathanpenn
518590[ kennyyork ] : https://github.com/apple/swift-argument-parser/commits?author=kennyyork
519591[ klaaspieter ] : https://github.com/apple/swift-argument-parser/commits?author=klaaspieter
592+ [ KS1019 ] : https://github.com/apple/swift-argument-parser/commits?author=KS1019
520593[ kylemacomber ] : https://github.com/apple/swift-argument-parser/commits?author=kylemacomber
521594[ Lantua ] : https://github.com/apple/swift-argument-parser/commits?author=Lantua
522595[ lorentey ] : https://github.com/apple/swift-argument-parser/commits?author=lorentey
@@ -528,6 +601,7 @@ This changelog's format is based on [Keep a Changelog](https://keepachangelog.co
528601[ NicFontana ] : https://github.com/apple/swift-argument-parser/commits?author=NicFontana
529602[ owenv ] : https://github.com/apple/swift-argument-parser/commits?author=owenv
530603[ pegasuze ] : https://github.com/apple/swift-argument-parser/commits?author=pegasuze
604+ [ rauhul ] : https://github.com/apple/swift-argument-parser/commits?author=rauhul
531605[ rjstelling ] : https://github.com/apple/swift-argument-parser/commits?author=rjstelling
532606[ Sajjon ] : https://github.com/apple/swift-argument-parser/commits?author=Sajjon
533607[ schlagelk ] : https://github.com/apple/swift-argument-parser/commits?author=schlagelk
0 commit comments