Skip to content

Conversation

@Marc-Antoine-Soucy
Copy link

GitHub Issue: #

Proposed Changes

  • Bug fix
  • Feature
  • Code style update (formatting)
  • Refactoring (no functional changes, no api changes)
  • Build or CI related changes
  • Documentation content changes
  • Other, please describe:

Description

Updated app to .NET 10, and dropped support for xamarin android, xamarin iOS, and UWP targets.

Impact on version

  • Major (Public API was modified.)
    • Public constructs (class, struct, delegate, enum, etc.) were removed or renamed.
    • Public members were removed or renamed.
    • Public method signatures were changed or renamed.
  • Minor (Public API was extended.)
    • Public constructs, members, or overloads were added.
  • Patch (Public API was unchanged.)
    • A bug in behavior was fixed.
    • Documentation was changed.
  • None (The library is unchanged.)
    • Only code under the build folder was changed.
    • Only code under the .github folder was changed.

PR Checklist

  • Your conventional commits are aligned with the Impact on version section.
  • Documentation is up to date.
    • Content of README.md is up to date.
    • XML documentation is up to date.
  • The BREAKING_CHANGES.md document is up to date.
    • Create a new Major.0.0 header if you do a Major change and list the breaking changes.
  • Tested on all relevant platforms

Other information

Internal Issue (If applicable):

Copy link
Contributor

Choose a reason for hiding this comment

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

Should we take the opportunity to get rid of the SLN file and convert it to the new SLNX format?

https://devblogs.microsoft.com/dotnet/introducing-slnx-support-dotnet-cli/#getting-started

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This pull request upgrades the BiometryService library from .NET 7 to .NET 10 and removes support for legacy platforms (Xamarin Android, Xamarin iOS, and UWP). This is a breaking change that modernizes the codebase and aligns with current .NET ecosystem standards.

Changes:

  • Updated target frameworks from net7.0 to net10.0 across all projects
  • Removed support for Xamarin Android, Xamarin iOS, and UWP platforms
  • Updated package dependencies to versions compatible with .NET 10
  • Removed legacy Xamarin sample projects (iOS, Android, UWP)
  • Updated C# language version from 11.0 to 14.0

Reviewed changes

Copilot reviewed 34 out of 53 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
src/BiometryService/BiometryService.csproj Updated to .NET 10 with modern SDK and removed legacy Xamarin/UWP targets
src/BiometryService/BiometryService.UWP.cs Deleted - UWP implementation removed
src/BiometryService.Abstractions/BiometryService.Abstractions.csproj Updated language version and package references
samples/BiometryService.SampleApp.Uno.Mobile/BiometryService.SampleApp.Uno.Mobile.csproj Updated to .NET 10 with modern Uno platform packages
samples/BiometryService.SampleApp.Uno.WinUI/BiometryService.SampleApp.Uno.WinUI.csproj Updated target framework to .NET 10 Windows
samples/BiometryService.SampleApp.Uno.Shared/App.xaml.cs Simplified application initialization by removing legacy code
samples/BiometryService.SampleApp.Uno.Shared/MainPage.xaml.cs Removed logger factory parameters from BiometryService constructors
samples/BiometryService.SampleApp.Uno.iOS/* Deleted - legacy Xamarin iOS project removed
samples/BiometryService.SampleApp.Uno.Droid/* Deleted - legacy Xamarin Android project removed
samples/BiometryService.SampleApp.Uno.UWP/* Deleted - UWP project removed
BiometryService.sln Removed references to deleted legacy projects
build/azure-pipelines.yml Updated to Windows 2025 agent image
Directory.Build.targets Deleted - SourceLink workaround no longer needed
BREAKING_CHANGES.md Documented breaking changes for version 3.0.0

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


* Added support for .NET 10.
* Dropped support for .NET 7.
* Dropped supporort for Xamarin Android, Xamarin iOS and UWP.
Copy link

Copilot AI Jan 19, 2026

Choose a reason for hiding this comment

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

There is a spelling error in this line. "supporort" should be "support".

Suggested change
* Dropped supporort for Xamarin Android, Xamarin iOS and UWP.
* Dropped support for Xamarin Android, Xamarin iOS and UWP.

Copilot uses AI. Check for mistakes.
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<PackageTags>biometry;FaceID;TouchID;Fingerprint;mvvm;maui;winui;ios;android;xamarin;uwp</PackageTags>
<GenerateLibraryLayout>true</GenerateLibraryLayout>
<PackageTags>biometry;FaceID;TouchID;Fingerprint;mvvm;maui;winui;ios;android;xamarin</PackageTags>
Copy link

Copilot AI Jan 19, 2026

Choose a reason for hiding this comment

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

The PackageTags still includes "xamarin" even though Xamarin Android and Xamarin iOS support has been dropped. Consider removing this tag to avoid confusion, or clarify that it only refers to the Xamarin.AndroidX packages still being used.

Copilot uses AI. Check for mistakes.
# Visual Studio Version 17
VisualStudioVersion = 17.0.31912.275
# Visual Studio Version 18
VisualStudioVersion = 18.0.11222.15 d18.0
Copy link

Copilot AI Jan 19, 2026

Choose a reason for hiding this comment

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

The VisualStudioVersion contains an unusual format "18.0.11222.15 d18.0" which appears to have extra text ("d18.0") that may not be valid. This should likely be just a version number like "18.0.11222.15".

Suggested change
VisualStudioVersion = 18.0.11222.15 d18.0
VisualStudioVersion = 18.0.11222.15

Copilot uses AI. Check for mistakes.

public Window CurrentWindow { get; private set; }

public static App Instance { get; private set; }
Copy link

Copilot AI Jan 19, 2026

Choose a reason for hiding this comment

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

The Instance property is declared but never initialized. Either remove this unused property or initialize it in the constructor (e.g., Instance = this;).

Copilot uses AI. Check for mistakes.
Comment on lines +67 to +71
<ItemGroup Condition="'$(TargetFramework)' == 'net10.0-android'">
<PackageReference Include="Xamarin.Google.Android.Material">
<Version>1.12.0.4</Version>
</PackageReference>
</ItemGroup>
Copy link

Copilot AI Jan 19, 2026

Choose a reason for hiding this comment

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

This ItemGroup duplicates the Android package references already defined in lines 49-54. The Xamarin.Google.Android.Material package should be added to the existing Android ItemGroup above rather than creating a separate one. This creates redundancy and inconsistency in the project structure.

Copilot uses AI. Check for mistakes.
promptBuilder
);
#endif
#if WINDOWS_UWP || WINDOWS
Copy link

Copilot AI Jan 19, 2026

Choose a reason for hiding this comment

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

The WINDOWS_UWP conditional compilation directive is still included even though UWP support has been dropped. This should be changed to just WINDOWS to avoid confusion, as WINDOWS_UWP is no longer a supported platform.

Suggested change
#if WINDOWS_UWP || WINDOWS
#if WINDOWS

Copilot uses AI. Check for mistakes.
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.

3 participants