0.20.0
Highlights
- Add comprehensive Text rendering: NSAttributedString measurement/drawing, image attachments, custom Font APIs, line limit support, and Text resolution
- Add full DisplayListPrinter and SwiftUI display-list LLDB debugging support
- Fix safe area inset resolution and ViewTransform coordinate-space conversions
- Fix preference bridge ownership, PropertyList mutation semantics, and ShapeType initialization crash
- Move OpenURLAction to OpenSwiftUICore with improved system URL handling
What's Changed
- Fix mismatched optional/static view aliases by @jcmosc in #924
- Update availability macros for OS 26 and 27 by @Kyle-Ye in #933
- Update snapshot testing dependency to 1.19.3 by @Kyle-Ye in #934
- Fix compatibility test import flag parsing by @Kyle-Ye in #936
- Add View.onPreferenceChange support by @Kyle-Ye in #937
- Remove obsolete AnyAttribute compiler workaround by @Kyle-Ye in #938
- Update Tuist to 4.202.5 and use essential build settings by @Kyle-Ye in #939
- Update Text.resolve implementation by @Kyle-Ye in #940
- Add image attachment support to Text by @Kyle-Ye in #941
- Disable SwiftSyntax prebuilts for UI tests by @Kyle-Ye in #942
- Update Font modifiers by @Kyle-Ye in #943
- Consolidate mise configuration at repository root by @Kyle-Ye in #944
- Update ResolvedStyledText API by @Kyle-Ye in #945
- Update SwiftSyntax to 603.0.2 by @Kyle-Ye in #946
- Add NSAttributedString text measurement and drawing implementation by @Kyle-Ye in #947
- Complete AccessibilityText implementation by @Kyle-Ye in #948
- Implement Text.Style.nsAttributes attribute resolution by @Kyle-Ye in #950
- Fix Xcode Previews for binary framework distributions by @Kyle-Ye in #952
- Implement custom Font APIs by @Kyle-Ye in #951
- Fix PropertyList mutation and comparison semantics by @Kyle-Ye in #953
- Move OpenURLAction to OpenSwiftUICore and update system handling by @Kyle-Ye in #954
- Fix selector handling in Objective-C shims by @Kyle-Ye in #956
- Use Compute 0.4.1-bugfix.2 from source by @Kyle-Ye in #955
- Pin Compute source in stdout renderer and update Tuist by @Kyle-Ye in #957
- Implement line limit APIs by @Kyle-Ye in #958
- Fix support framework linkage for binary consumers by @Kyle-Ye in #959
- Use the OpenSwiftUI ABI namespace for OpenSwiftUICore by @Kyle-Ye in #960
- Preserve generated Swift flags in Example projects by @Kyle-Ye in #962
- Implement Text resolution and anchored layout queries by @Kyle-Ye in #961
- Enable Tuist Xcode caching and build insights in CI by @Kyle-Ye in #949
- Implement ViewTransform coordinate-space conversions by @Kyle-Ye in #963
- Fix safe area inset resolution across coordinate spaces by @Kyle-Ye in #965
- Add focused XCFramework slice builds by @Kyle-Ye in #967
- Fix preference bridge ownership and align preference internals by @Kyle-Ye in #966
- Update EnvironmentValues config by @Kyle-Ye in #969
- Add full DisplayListPrinter support by @Kyle-Ye in #970
- Add line limit UI tests by @Kyle-Ye in #972
- Add text orphan and push-out UI test by @Kyle-Ye in #973
- Add SwiftUI minimal display-list LLDB hook by @Kyle-Ye in #974
- Fix ShapeType initialization crash by @Kyle-Ye in #975
- Enable Preview examples on macOS by @Kyle-Ye in #976
- Add an Inter font playground to the example app by @Kyle-Ye in #977
Full Changelog: 0.19.2...0.20.0
Binary Integration
.package(url: "https://github.com/OpenSwiftUIProject/OpenSwiftUI-spm.git", from: "0.20.0")See INTEGRATION.md for more details.