Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for macCatalyst and visionOS. Drop earlier version support. #81

Merged
merged 6 commits into from
Jan 20, 2024

Conversation

dfed
Copy link
Owner

@dfed dfed commented Jan 11, 2024

We were supporting a very old list of Swift, Xcode, and Apple platform versions. This PR brings us into the more modern age, but still keeps a healthy list of supported platforms.

@dfed dfed self-assigned this Jan 11, 2024
Copy link

codecov bot commented Jan 11, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (f58ecd3) 98.92% compared to head (6303bf3) 99.02%.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main      #81      +/-   ##
==========================================
+ Coverage   98.92%   99.02%   +0.10%     
==========================================
  Files          13       11       -2     
  Lines         560      515      -45     
==========================================
- Hits          554      510      -44     
+ Misses          6        5       -1     

see 4 files with indirect coverage changes

@dfed dfed force-pushed the dfed--more-supported-versions branch from acb7d5f to c759642 Compare January 11, 2024 04:09
@dfed dfed changed the title Add support for Linux, macCatalyst, and visionOS Add support for Linux, macCatalyst, and visionOS. Drop Objective-C support. Jan 11, 2024
@dfed
Copy link
Owner Author

dfed commented Jan 11, 2024

Ah shucks. Adding Linux supports requires re-implementing NSByteOrder, which is pretty far out of scope. We'll get that on a future pass.

@dfed dfed changed the title Add support for Linux, macCatalyst, and visionOS. Drop Objective-C support. Add support for macCatalyst and visionOS. Drop earlier Xcode and Swift version support. Jan 11, 2024
@dfed dfed changed the title Add support for macCatalyst and visionOS. Drop earlier Xcode and Swift version support. Add support for macCatalyst and visionOS. Drop earlier version support. Jan 11, 2024
* watchOS 5 or later.
* macOS 10.14 or later.
* Swift 5.0 or later.
* Xcode 12.4 or later.
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm somewhat tempted to go straight to Swift 5.9 and ignore older Xcode versions, but continuing to support older Xcode versions enables a test suite across more Apple platform versions, and currently there are zero code changes required to support Swift/Xcode versions above Swift 5.5.

@@ -0,0 +1,48 @@
// swift-tools-version:5.7
Copy link
Owner Author

@dfed dfed Jan 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these files are just clones of the Package.swift with different swift tools versions unless otherwise specified.

.watchOS(.v6),
.macOS(.v10_15),
.macCatalyst(.v13),
.visionOS(.v1)
Copy link
Owner Author

@dfed dfed Jan 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

visionOS is new to the Swift 5.9 Package.swift file. We'll add CI for it once arm Xcode 15.2 machines are available to OSS projects on GitHub.

@dfed dfed marked this pull request as ready for review January 20, 2024 22:11
@dfed dfed merged commit 5ccc3d3 into main Jan 20, 2024
12 checks passed
@dfed dfed deleted the dfed--more-supported-versions branch January 20, 2024 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant