From 2d5135ede37af5b8e6af843b66796f7c6267cc4a Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:26:50 -0500 Subject: [PATCH 1/7] Update changelog for 0.0.2 release --- CHANGELOG.md | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3cda00b..0d4a774 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,34 @@ Add new items at the end of the relevant section under **Unreleased**. --- +## [0.0.2] - 2026-03-27 + +### Additions + +- Adds `Data` parsers to match existing `Array` support. ([#27]) +- Adds parsers for `InlineArray`, including both byte-based parsing and repeated parser-based initialization. ([#35]) +- Adds a parser for LEB128 integers. ([#31]) +- Adds `ParserSpan.extracting` APIs that produce spans with reset internal bounds for safer subparsing. ([#36]) +- Enables the embedded version of the library via the `BinaryParsingEmbedded` target. ([#50]) +- Adds an Xcode project for building the package as a framework. ([#52]) + +### Changes + +- Lowers deployment targets now that `Span` support is back-deployed. ([#47]) +- Adds/enables workflows for format and API breakage checks, macOS CI checks, tighter GitHub workflow permissions, and documentation hosting updates. ([#24], [#28], [#40], [#51]) + +### Fixes + +- Fixes the `MagicNumberStringMacro` to allow custom parsing argument names. ([#30]) +- Updates to latest lifetime syntax and cleans up flags. ([#29], [#45], [#49]) +- Re-enables a test that is passing again. ([#48]) +- Removes extraneous `try` keywords. ([#46]) +- Fixes DocC disambiguation issues. ([#23]) +- Updates dependencies and platform baselines.([#21], [#22], [#38], [#33]) + +The 0.0.2 release includes contributions from [dgregor], [kkazuha7], [incertum], +[natecook1000], and [willtemperley]. Thank you! + ## [0.0.1] - 2025-07-12 `BinaryParsing` initial release! @@ -18,11 +46,39 @@ This changelog's format is based on [Keep a Changelog](https://keepachangelog.co -[Unreleased]: https://github.com/apple/swift-binary-parsing/compare/0.0.1...HEAD +[Unreleased]: https://github.com/apple/swift-binary-parsing/compare/0.0.2...HEAD +[0.0.2]: https://github.com/apple/swift-binary-parsing/releases/tag/0.0.1...0.0.2 [0.0.1]: https://github.com/apple/swift-binary-parsing/releases/tag/0.0.1 +[#21]: https://github.com/apple/swift-binary-parsing/pull/21 +[#22]: https://github.com/apple/swift-binary-parsing/pull/22 +[#23]: https://github.com/apple/swift-binary-parsing/pull/23 +[#24]: https://github.com/apple/swift-binary-parsing/pull/24 +[#27]: https://github.com/apple/swift-binary-parsing/pull/27 +[#28]: https://github.com/apple/swift-binary-parsing/pull/28 +[#29]: https://github.com/apple/swift-binary-parsing/pull/29 +[#30]: https://github.com/apple/swift-binary-parsing/pull/30 +[#31]: https://github.com/apple/swift-binary-parsing/pull/31 +[#33]: https://github.com/apple/swift-binary-parsing/pull/33 +[#35]: https://github.com/apple/swift-binary-parsing/pull/35 +[#36]: https://github.com/apple/swift-binary-parsing/pull/36 +[#38]: https://github.com/apple/swift-binary-parsing/pull/38 +[#40]: https://github.com/apple/swift-binary-parsing/pull/40 +[#45]: https://github.com/apple/swift-binary-parsing/pull/45 +[#46]: https://github.com/apple/swift-binary-parsing/pull/46 +[#47]: https://github.com/apple/swift-binary-parsing/pull/47 +[#48]: https://github.com/apple/swift-binary-parsing/pull/48 +[#49]: https://github.com/apple/swift-binary-parsing/pull/49 +[#50]: https://github.com/apple/swift-binary-parsing/pull/50 +[#51]: https://github.com/apple/swift-binary-parsing/pull/51 +[#52]: https://github.com/apple/swift-binary-parsing/pull/52 +[DougGregor]: https://github.com/DougGregor +[incertum]: https://github.com/incertum +[kkazuha7]: https://github.com/kkazuha7 +[natecook1000]: https://github.com/natecook1000 +[willtemperley]: https://github.com/willtemperley From 9ce37d92a5caba01674ac1cb1495c26bfc4eb4ad Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:34:42 -0500 Subject: [PATCH 2/7] Update test platforms --- .github/workflows/pull_request.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index cda070e..af91c6a 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -28,8 +28,8 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: enable_macos_checks: true - macos_xcode_versions: "[\"26.1\"]" - linux_swift_versions: "[ \"6.2\", \"nightly-6.3\"]" + macos_xcode_versions: "[\"16.3\", \"16.4\", \"26.3\", \"26.4.b2\"]" + linux_swift_versions: "[\"6.2\", \"nightly-6.3\", \"nightly-main\"]" linux_build_command: swift test --disable-experimental-prebuilts # prebuilt swift-syntax not building enable_windows_checks: false From 2133684e9d40fd41e9d3818173f5c04c75692b91 Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:36:04 -0500 Subject: [PATCH 3/7] Update Xcode test platform --- .github/workflows/pull_request.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index af91c6a..fea54d1 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -53,12 +53,12 @@ jobs: xcodeproject: name: Xcode project (Xcode 26.1) - runs-on: [self-hosted, macos, "sequoia", "ARM64"] + runs-on: [self-hosted, macos, "tahoe", "ARM64"] steps: - name: Checkout repository uses: actions/checkout@v4 - name: Select Xcode - run: echo "DEVELOPER_DIR=/Applications/Xcode_26.1.app" >> $GITHUB_ENV + run: echo "DEVELOPER_DIR=/Applications/Xcode_26.3.app" >> $GITHUB_ENV - name: Swift version run: xcrun swift --version - name: Clang version From bee1d384c2a6a1e1751e31e2c9f2897ed3073885 Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:36:43 -0500 Subject: [PATCH 4/7] Don't test on Xcode 16.3 --- .github/workflows/pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index fea54d1..4245d74 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -28,7 +28,7 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: enable_macos_checks: true - macos_xcode_versions: "[\"16.3\", \"16.4\", \"26.3\", \"26.4.b2\"]" + macos_xcode_versions: "[\"16.4\", \"26.3\", \"26.4.b2\"]" linux_swift_versions: "[\"6.2\", \"nightly-6.3\", \"nightly-main\"]" linux_build_command: swift test --disable-experimental-prebuilts # prebuilt swift-syntax not building enable_windows_checks: false From ba372e449ed674e146d7c1ca8f5de23d25c2a631 Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:37:27 -0500 Subject: [PATCH 5/7] ...or Xcode 16.4 --- .github/workflows/pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 4245d74..37842eb 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -28,7 +28,7 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: enable_macos_checks: true - macos_xcode_versions: "[\"16.4\", \"26.3\", \"26.4.b2\"]" + macos_xcode_versions: "[\"26.3\", \"26.4.b2\"]" linux_swift_versions: "[\"6.2\", \"nightly-6.3\", \"nightly-main\"]" linux_build_command: swift test --disable-experimental-prebuilts # prebuilt swift-syntax not building enable_windows_checks: false From 9369d246c07e9253eca5ac15ceeba5f3047b3974 Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:42:00 -0500 Subject: [PATCH 6/7] Update Xcode test name --- .github/workflows/pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 37842eb..0d38d35 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -52,7 +52,7 @@ jobs: .build/debug/EmbeddedExample xcodeproject: - name: Xcode project (Xcode 26.1) + name: Xcode project (Xcode 26.3) runs-on: [self-hosted, macos, "tahoe", "ARM64"] steps: - name: Checkout repository From 4ff118468bed661fe5ab13d7b8ba9f6554a57fe6 Mon Sep 17 00:00:00 2001 From: Nate Cook Date: Fri, 27 Mar 2026 14:48:26 -0500 Subject: [PATCH 7/7] Don't actually use nightly-main (error type checking issue) --- .github/workflows/pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 0d38d35..5e8c701 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -29,7 +29,7 @@ jobs: with: enable_macos_checks: true macos_xcode_versions: "[\"26.3\", \"26.4.b2\"]" - linux_swift_versions: "[\"6.2\", \"nightly-6.3\", \"nightly-main\"]" + linux_swift_versions: "[\"6.2\", \"nightly-6.3\"]" linux_build_command: swift test --disable-experimental-prebuilts # prebuilt swift-syntax not building enable_windows_checks: false