Hello all,
The author of SF-0023 ProgressManager: Progress Reporting in Swift Concurrency, Chloe, wants to propose a minor post-review update for SF-0023. Reviews for these updates begin now and run through Monday, October 6th, 2025.
Here's a summary of changes:
-
Replaced
withPropertiesmethod withsetCounts -
Removed
ProgressManager.Valuesstruct -
Made
ProgressManagerconform to@dynamicMemberLookupand movedsubscript(dynamicMember:)methods fromProgressManager.ValuestoProgressManager -
Changed behavior of API so that additional properties are restricted to either
Int,Double,String?,URL?,UInt64orDurationtypes instead ofany Sendabletypes -
Added overloads for
subscript(dynamicMember:)to account for currently-allowed types -
Added requirements to
ProgressManager.Propertyprotocol to define summarization and termination (deinit) behavior -
Replaced
total(of:)with overloads forsummary(of:)to account for all available types and removedvalues(of:)method
Reviews are an important part of the Swift-Foundation evolution process. All review feedback should be either on this forum thread or, if you would like to keep your feedback private, directly to me as the review manager by email or DM. When contacting the review manager directly, please include proposal name in the subject line.
Trying it out
Checkout the implementation PR here
More information about Swift-Foundation review process is available at
swift-foundation/CONTRIBUTING.md at main · swiftlang/swift-foundation · GitHub
Thank you,
Charles Hu
Review Manager