Releases: g-mark/SwiftPath
Releases · g-mark/SwiftPath
Version 1.0.0
This is a breaking change: Cocoapods & Carthage support are dropped; minimum Swift language version is now 6.1.
Features
- Added broader RFC 9535 JSONPath support, including wildcard selectors, array slices, escaped quoted name selectors, and expanded array filters.
- Added array slice parsing/evaluation with omitted bounds, steps, reverse slices, clamped bounds, and empty-result semantics.
- Added filter expressions for existence checks, string/bool/null literals, comparison operators,
!,&&,||, parentheses, and quoted filter path properties. - Updated wildcard behavior so both
.*and[*]work across object values and array elements. - Added RFC escape decoding for quoted property names, including Unicode escapes and surrogate pairs.
- Added Swift concurrency safety support, including Sendable conformance for JsonPath.
Fixes
- Fixed array index behavior so out-of-range indexes and index selectors on non-arrays select nothing instead of failing.
- Fixed Linux hangs due to swift-corelibs-foundation linux bug.
Maintenance
- Raised the package tools version to Swift 6.1.
- Removed CocoaPods, Carthage, legacy Xcode project, Fastlane/Gemfile, and old sample project artifacts; Swift Package Manager is now the supported installation path.
- Updated CI to build and test with SwiftPM on macOS, iOS simulator, and Linux.
- Expanded README documentation with RFC 9535 compatibility notes and updated installation guidance.
- Migrated tests from XCTest to Swift Testing and expanded coverage for parsing, selectors, filters, slices, concurrency, and Linux behavior.
Version 0.3.1
Remove Swift 4.0 CI check
Version 0.3.0
Merge pull request #22 from g-mark/release/0.3.0 Release 0.3.0