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

Code Quality: Upgrade dependencies #16741

Open
wants to merge 28 commits into
base: main
Choose a base branch
from

Conversation

hez2010
Copy link
Member

@hez2010 hez2010 commented Jan 27, 2025

Upgrade to .NET 9
Upgrade to WASDK 1.6
Upgrade to CommunityToolkit.WinUI 8.2
Upgrade to CsWinRT 2.2
Migrate to slnx (while still keeping sln for CI now)
Use centralized nuget package version management
Use new Microsoft.UI.Content metadata

Known issues:

  • TotalLaunchCount will be reset as we implement a different approach for counting this
  • slnx won't work in CI until .NET SDK 9.0.200 is out
  • Scroll via middle click
  • Mouse cursors
  • Random crashes while navigating, this is due to a memory safety issue of CsWinRT, a workaround to this will be pushed in a following PR

Resolved / Related Issues

Supersedes #16156
Supersedes #16557
Closes #14826
Closes #16705

Steps used to test these changes

Stability is a top priority for Files and all changes are required to go through testing before being merged into the repo. Please include a list of steps that you used to test this PR.

  1. Opened Files ...
  2. ...

.gitignore Outdated Show resolved Hide resolved
@yaira2 yaira2 changed the title Upgrade dependencies Code Quality: Upgrade dependencies Jan 27, 2025
@hez2010
Copy link
Member Author

hez2010 commented Jan 27, 2025

I temporarily brought back the sln for CI.

@hez2010
Copy link
Member Author

hez2010 commented Jan 27, 2025

CI is passing

@Lamparter
Copy link
Contributor

This PR also supersedes #16557 and closes #14826

@Lamparter
Copy link
Contributor

By the way, the work you put into this is amazing and the fact that it works is jaw-dropping 😮

src/Files.App/App.xaml.cs Outdated Show resolved Hide resolved
@files-community-bot
Copy link
Contributor

⛔ No XAML files changed.

Copy link
Contributor

@Lamparter Lamparter left a comment

Choose a reason for hiding this comment

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

It's looking amazing! ❤️

nuget.config Outdated Show resolved Hide resolved
src/Files.App.Controls/BladeView/BladeItem.Properties.cs Outdated Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

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

What if you created a WindowsTargetFramework MSBuild switch so you don't need to specify $(TargetFrameworkVersion)-windows$(TargetWindowsVersion) in every project file?
e.g.:

<!-- Directory.Build.props -->
<WindowsTargetFramework>$(TargetFrameworkVersion)-windows$(TargetWindowsVersion)</WindowsTargetFramework>

and then in the project file:

<!-- Files.*.csproj, Target: Windows -->
<TargetFramework>$(WindowsTargetFramework)</TargetFramework>

<TargetFrameworkVersion>net9.0</TargetFrameworkVersion>
<TargetWindowsVersion>10.0.22621.0</TargetWindowsVersion>
<MinimalWindowsVersion>10.0.19041.0</MinimalWindowsVersion>
<WindowsSdkPackageVersion>10.0.22621.57</WindowsSdkPackageVersion>
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
<WindowsSdkPackageVersion>10.0.22621.57</WindowsSdkPackageVersion>
<WindowsSdkPackageVersion>10.0.22621.57</WindowsSdkPackageVersion>
<DefineConstants>$(DefineConstants);$(Platform)</DefineConstants>

@0x5bfa
Copy link
Member

0x5bfa commented Feb 2, 2025

I won't request changes for tiny quality and sanitization issues as long as it works (and looks perfect already) in this PR given lots of work have been put and it still WIP.

@Lamparter
Copy link
Contributor

Wait, this PR is WIP?

@hez2010
Copy link
Member Author

hez2010 commented Feb 3, 2025

Wait, this PR is WIP?

It's not WIP. Some missing features like mouse middle-button scrolling will be ported in the following PR.

@0x5bfa
Copy link
Member

0x5bfa commented Feb 7, 2025

Yet, I don't request any.
Looks great to me.

@hez2010
Copy link
Member Author

hez2010 commented Feb 7, 2025

I think I have resolved most feedbacks. PTAL.
Some missing features and the random crashes on navigation will be addressed in a following PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants