Samples: review SupportedOSPlatformVersion (minimum iOS version) across sample apps

Đang mở
#628 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
48/100
Loại issue
Tính năng
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
csharp
Lĩnh vực
devtools, mobile

Hướng nghiên cứu

Read the listed MAUI, Avalonia and Uno project files, Avalonia’s Info.plist, and docs/samples/todoapp/; consult framework documentation and release notes for supported iOS and Mac Catalyst versions. Decide and document suitable targets, align the iOS values, and update the documentation. Done when the stated acceptance criteria are met and the three named Build Samples iOS jobs pass on the pull request.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Examples

Summary

Review the minimum iOS deployment target (SupportedOSPlatformVersion) used by the sample apps, and decide whether to raise it.

Background

This was noted while working on #622 / PR #626. SupportedOSPlatformVersion is the minimum OS the app runs on. It is separate from the SDK or Xcode version the app is built with, so it does not block building against newer SDKs. It does control which platform APIs are available without runtime checks, and it can constrain which versions of dependencies can be used.

Current values:

Sample File Setting
MAUI samples/todoapp/TodoApp.MAUI/TodoApp.MAUI.csproj iOS 15.0, Android 21.0, Windows 10.0.17763.0
Avalonia iOS samples/todoapp/TodoApp.Avalonia/TodoApp.Avalonia.iOS/TodoApp.Avalonia.iOS.csproj 15.0
Avalonia iOS samples/todoapp/TodoApp.Avalonia/TodoApp.Avalonia.iOS/Info.plist MinimumOSVersion 15.0
Avalonia Android samples/todoapp/TodoApp.Avalonia/TodoApp.Avalonia.Android/TodoApp.Avalonia.Android.csproj 34
Uno samples/todoapp/TodoApp.Uno/TodoApp.Uno/TodoApp.Uno.csproj not set explicitly (uses the Uno SDK default)

The platform values are not consistent across samples. For example, Android is 21.0 in MAUI but 34 in Avalonia. iOS is 15.0 in both MAUI and Avalonia, but the Avalonia value is duplicated in Info.plist and must be changed in both places.

Proposed work

  1. Confirm the minimum supported iOS (and Mac Catalyst) version for each framework at the versions the samples use (MAUI, Avalonia, Uno), using their documentation and release notes.
  2. Decide on a target for the iOS samples. Consider what the toolkit's client library needs, what current Apple guidance is, and what the samples are meant to show. Samples should reflect what a new app would reasonably choose today.
  3. Decide whether the other platform values (Android, Windows) should be reviewed too, or only iOS. At minimum, document why they differ if they stay different.
  4. Align the values across samples where there is no good reason for a difference.
  5. Keep Info.plist MinimumOSVersion in step with the csproj value for Avalonia.
  6. Consider whether Uno should set the value explicitly so the target is visible in the project.
  7. Check docs/samples/todoapp/ for any mention of minimum OS versions and update it.

Validation

Validate through CI on the pull request: the todoapp-maui / ios, todoapp-avalonia / ios and todoapp-uno / ios-maccatalyst jobs in Build Samples must pass. Triggering workflows with workflow_dispatch on the fork has not been reliable for the macOS jobs, but runs triggered by a pull request work.

Acceptance criteria

  • The iOS minimum deployment target is deliberately chosen, consistent across the iOS samples, and the reason is recorded in the PR.
  • Avalonia's csproj and Info.plist agree.
  • Documentation matches the final values.
  • Build Samples passes on the PR.

Related

  • #622 / PR #626: move macOS sample jobs to macos-26.
  • Follow-up: drop the workload set pin and move to Xcode 26.5 (separate issue). The two changes are independent and should be separate PRs.
Ngôn ngữ chính
C#
Star
184
Fork
48
Merge trung bình
12 phút
Pull request đã merge (30 ngày)
21

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của CommunityToolkit/Datasync

Tất cả issue của CommunityToolkit/Datasync

Issue tương tự

Thêm issue về C#

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.