Repository navigation
PocketSVG 3.2.3 brings together the 3.x changes since 2.8.0, the previous published GitHub release.
Upgrading from 2.8.0
- The minimum macOS version is now macOS 14.
- Swift Package Manager requires Swift tools 5.9. The package manifest also includes fixes for Swift 6 warnings.
Fixes and improvements
- Correct zero and fractional-coordinate parsing while preserving compact arc flags. Includes regression coverage for the Illustrator SVG and both arrow paths reported in #227 and #219. (#228, #239, #240)
- Treat unsupported or malformed fill/stroke paints as transparent instead of asserting, including gradient references such as
url(#gradient). Support percentage and decimalrgb()colours, and preserve inherited opacity overrides. (#238) - Apply inherited and overridden
fill-rulevalues to native Bezier paths as well as layers, preserving even-odd holes during direct drawing, copying, and cached loading. Unrelated attribute updates preserve manually configured native fill rules. (#240) - Correct nullable declarations and retained-return annotations; document and regression-test
CGPathFromSVGPathStringownership and Swift interoperability. (#229, #230, #231, #239) - Refresh installation examples and hosted Mac CI, including Node.js 24 for the checkout action.
Validation
The release commit passed CI: 31 macOS tests in both Debug and Release, 33 iOS simulator tests, Core Foundation ownership analysis, both demo builds, and CocoaPods lint.
Gradient rendering, stylesheet classes, and <use> references remain unsupported. See the README for supported features and export guidance.