Releases: marinofelipe/swift-package-info
1.5.0 - Introduce `.xcconfig` and revision support
What's Changed
- Support custom and fine tuned build configuration via optional
.xcconfig
file by @mackoj - #49 - Support revision (commit, branch) by @marinofelipe (suggested by @ipedro) - #47
Full Changelog: 1.4.1...1.5.0
1.4.1 - Latest semver version/tag used by default
What's Changed
- Fix tag ordering by @marinofelipe in #46
- Improve README install instructions
Full Changelog: 1.4.0...1.4.1
1.4.0 - Migrate to SwiftPM lib
What's Changed
- Update to use SPM library by @marinofelipe in #44
- Improvements by @marinofelipe in #45
- Prints built both Swift and user Swift toolchain
Full Changelog: 1.3.4...1.4.0
Swift 5.9 fix
#42 - Fix decoding Packages using the Swift 5.9 toolchain
Fix output when piping result into a file
Fixes #38 so that the tool correctly generates output in stdout when piping the result into a file - #40 by @spookyd
A fallback PrintController
was added to Console
to ensure the output is there whenever the default TerminalController
fails to initialize, which might possibly benefit other (currently) unknown scenarios.
Fix Package dump decode on Swift 5.6
- Fixes decoding the json dump of Package.swift when generated using swift's 5.6 toolchain
- Improve performance of Shell commands (to be revisited alongside timeout that was disabled since was broken)
- Fix warnings
- Update file headers
Fix race condition and improve performance
From time to time Swift Package Info would get stuck at "Generating archive for updated app"..., leading memory and CPU consumption to go through the roofs!
This release fixes a race condition that would cause the running Shell process to never end, by replacing the evaluation of NSPipe data on readabilityHandler to be done using readData(ofLength:)
instead of availableData
.
More details on #32.
Fix running on Swift 5.5 toolchain
Support JSON dump report strategy
- Make
Reports
scalable and introduce a new user facing argument:
--report, --report-format, --output, --output-format <report>
Report output format/strategy (default: consoleMessage)
That allows users to pass a custom report strategy:
swift-package-info --for https://github.com/ReactiveX/RxSwift --product RxSwift --output jsonDump
Current supported values are [consoleMessage, jsonDump]
.
Resolved #3
- Add tests for all providers - with changes in the API and dependencies to make dependencies like
SizeMeasurer
"replaceable" so providers can be tested with mocks, without doing "real" work and with expectations to assert against.
Resolved #5
Support local packages
Swift Package Info
was extended to support analyzing local packages.
"Breaking change"
The <repository-url>
parameter was renamed to <url>
, with previous naming variations supported, and newly added path
and local-path
.
Usage
Similar for both remote and local packages, where the user can input either a valid remote Git repository or a local directory path containing a Package.swift
, via the url
parameter:
// remote
swift run swift-package-info --for https://github.com/ReactiveX/RxSwift
// local - with relative path
swift run swift-package-info --for ../RxSwift