mmanela / diffplex

DiffPlex is Netstandard 1.0+ C# library to generate textual diffs.
Apache License 2.0
990 stars 183 forks source link

Add UI library for Windows App SDK #96

Closed kingcean closed 1 year ago

kingcean commented 1 year ago

Windows App SDK is the latest development platform to run app on Windows. It targets .NET 5+ and uses WinUI 3. This PR is to add the supports on this.

Projects

Please ensure the development environment is ready before loading and building.

Project name Type Description
Windows Desktop\DiffPlex.Windows Library The UI library
Windows Desktop\DiffPlex.App App A demo app

Screenshot for the app

Features

The diff text view element contains following familiar features.

High performance: The demo shows 5K+ lines in less than 0.1s (test device is a Surface Pro 8).

The library also include a standalone window to load the diff text view to pop-up.

Build

The changeset includes 2 projects which declare to importe Windows App SDK packages. This means they can only build on...

You can build and run DiffPlex.App project in Visual Studio. Please make sure the profile is Package.

Build in Package mode

It will output test data of texture diffs on Debug mode and empty on Release mode. This design is to make sure the release version is available to publish to Microsoft Store without further modification as well as we can test by using debug version.

kingcean commented 1 year ago

Build failure is expected because current CI/CD environment does not meet the requirement.

https://docs.microsoft.com/en-us/windows/apps/package-and-deploy/ci-for-winui3?pivots=winui3-packaged-csharp

kingcean commented 1 year ago

Hi @mmanela could you please have a look? Maybe need update CI/CD (Azure Pipeline) config to add supports of WinUI 3 packaged project to fix the check error.