diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0117f2e..ecb2c7a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,7 +10,7 @@ on: jobs: build: name: Build and Test - runs-on: macos-15 + runs-on: macos-26 outputs: version: ${{ steps.gitversion.outputs.semVer }} defaults: @@ -23,10 +23,11 @@ jobs: with: fetch-depth: 0 # Required for Calculate Version step (e.g. GitVersion) - - name: Install .NET 9.0 - uses: actions/setup-dotnet@v5 - with: - dotnet-version: 9.0 + # Select Xcode 26.1 before workload restore, as the iOS SDK workload requires it + # Also use the full path instead of the symlink as using the causes the error: + # xcrun: error: unable to find utility "actool", not a developer tool or in PATH + - name: Select Xcode 26.1 + run: sudo xcode-select -s /Applications/Xcode_26.1.1.app - name: Install Workloads run: dotnet workload restore @@ -50,7 +51,7 @@ jobs: # of the Example Client because it takes a long time and we don't publish it. - name: Debug Build of Solution to Smoke Test Example Client run: dotnet build -c Debug - + - name: Create NuGet Package run: dotnet pack SaturdayMP.XPlugins.iOS.BEMCheckBox/SaturdayMP.XPlugins.iOS.BEMCheckBox.csproj -c Release @@ -73,10 +74,10 @@ jobs: id-token: write # Required for Trusted Publishing (OIDC token generation) steps: - - name: Install .NET 9.0 + - name: Install .NET 10.0 uses: actions/setup-dotnet@v5 with: - dotnet-version: 9.0 + dotnet-version: 10.0 - name: Download NuGet Package Artifact uses: actions/download-artifact@v4 diff --git a/AGENTS.md b/AGENTS.md index 561575c..a043f75 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -7,7 +7,7 @@ This document provides guidance for AI agents (like Claude Code, GitHub Copilot, **XPlugins.iOS.BEMCheckBox** is a .NET iOS binding library that wraps the native Swift BEMCheckBox framework for use in .NET iOS applications. It enables .NET developers to use highly customizable, animated checkbox controls in their iOS applications. **Current Version:** 9.0.0 -**Target Framework:** net9.0-ios18.0 +**Target Framework:** net10.0-ios (minimum iOS 18.0) **Language:** C# 12 **Package:** SaturdayMP.XPlugins.iOS.BEMCheckBox (NuGet) @@ -23,7 +23,7 @@ This document provides guidance for AI agents (like Claude Code, GitHub Copilot, ├── ExampleClient/ # Demo iOS application │ ├── MainViewController.cs # Usage examples │ └── *.csproj # Example app project -└── global.json # .NET SDK version (9.0.0) +└── global.json # .NET SDK version (10.0.0) ``` ## Key Components @@ -149,7 +149,7 @@ dotnet pack Source/SaturdayMP.XPlugins.iOS.BEMCheckBox/SaturdayMP.XPlugins.iOS.B **Build steps:** 1. Checkout with full Git history (required for GitVersion) -2. Install .NET 9.0 +2. Install .NET 10.0 3. Restore workloads 4. Install GitVersion (6.3.0) 5. Determine version @@ -280,7 +280,7 @@ To actually run the app, you must use an IDE (Visual Studio for Mac, Visual Stud **Requirements:** - macOS with Xcode installed -- .NET 9.0 SDK +- .NET 10.0 SDK - iOS Simulator available (for running) - IDE required for running (command-line build only) @@ -290,7 +290,7 @@ To actually run the app, you must use an IDE (Visual Studio for Mac, Visual Stud - **macOS required** for building (iOS SDK dependency) - **Xcode** must be installed (iOS development tools) -- **.NET 9.0 SDK** required (pinned in global.json:1) +- **.NET 10.0 SDK** required (pinned in global.json:1) - **iOS 18.0+** minimum target ### Binding Limitations @@ -306,7 +306,7 @@ To actually run the app, you must use an IDE (Visual Studio for Mac, Visual Stud - Main DLL only (not ExampleClient) - LICENSE.txt - README.md (referenced, not embedded) -- Target framework: net9.0-ios18.0 +- Target framework: net10.0-ios (minimum iOS 18.0) ## Testing Strategy @@ -432,7 +432,7 @@ To actually run the app, you must use an IDE (Visual Studio for Mac, Visual Stud - **Debug**: Includes ExampleClient, used for testing - **Release**: Library only, creates NuGet package -- **Target Framework**: net9.0-ios18.0 +- **Target Framework**: net10.0-ios (minimum iOS 18.0) - **Package ID**: SaturdayMP.XPlugins.iOS.BEMCheckBox - **License**: MIT diff --git a/GitVersion.yml b/GitVersion.yml index 63aebe7..0d6bd6e 100644 --- a/GitVersion.yml +++ b/GitVersion.yml @@ -1,4 +1,4 @@ -next-version: 9.0.0 +next-version: 10.0.0 workflow: GitHubFlow/v1 branches: main: diff --git a/README.md b/README.md index f875484..3ec6e9c 100644 --- a/README.md +++ b/README.md @@ -95,7 +95,7 @@ Building and running iOS applications from the command line requires an IDE. The # Version Mapping Below is the mapping of the BEMCheckBox version used in the XPlugin wrapper version along with the Xamarin/.NET version. -The .NET version lists the minimum .NET and iOS versions required. For example, `net9.0-ios18.0` means the XPlugin will work with .NET 9.0 and iOS 18.0 or higher (e.g. it will work with .NET 9, .NET 10, .NET 11, and iOS 18, iOS 19, iOS 20). +The .NET version lists the minimum .NET and iOS versions required. For example, `net10.0-ios` with minimum iOS 18.0 means the XPlugin will work with .NET 10.0 and iOS 18.0 or higher (e.g. it will work with .NET 10, .NET 11, .NET 12, and iOS 18, iOS 19, iOS 20). Starting with version 8, the XPlugin version will match the .NET release it is targeting. diff --git a/Source/ExampleClient/ExampleClient.csproj b/Source/ExampleClient/ExampleClient.csproj index 6d14629..2d94c66 100644 --- a/Source/ExampleClient/ExampleClient.csproj +++ b/Source/ExampleClient/ExampleClient.csproj @@ -1,6 +1,6 @@ - net9.0-ios18.0 + net10.0-ios Exe enable true diff --git a/Source/SaturdayMP.XPlugins.iOS.BEMCheckBox/SaturdayMP.XPlugins.iOS.BEMCheckBox.csproj b/Source/SaturdayMP.XPlugins.iOS.BEMCheckBox/SaturdayMP.XPlugins.iOS.BEMCheckBox.csproj index dd98d95..15d0bab 100644 --- a/Source/SaturdayMP.XPlugins.iOS.BEMCheckBox/SaturdayMP.XPlugins.iOS.BEMCheckBox.csproj +++ b/Source/SaturdayMP.XPlugins.iOS.BEMCheckBox/SaturdayMP.XPlugins.iOS.BEMCheckBox.csproj @@ -1,6 +1,7 @@ - net9.0-ios18.0 + net10.0-ios + 18.0 enable true true @@ -13,7 +14,7 @@ LICENSE.txt README.md https://github.com/saturdaymp/XPlugins.iOS.BEMCheckBox - net9.0 net9.0-ios ios ios-binding bemcheckbox checkbox saturdaymp + net10.0 net10.0-ios ios ios-binding bemcheckbox checkbox saturdaymp Saturday Morning Productions Inc. XPlugins.iOS.BEMCheckBox diff --git a/Source/global.json b/Source/global.json index ed8a7bb..424b42b 100644 --- a/Source/global.json +++ b/Source/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "9.0.0", + "version": "10.0.0", "rollForward": "latestFeature" } } \ No newline at end of file