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

[Deps] Upgrade System.IO.Abstractions #35656

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

Conversation

davidegiacometti
Copy link
Collaborator

@davidegiacometti davidegiacometti commented Oct 29, 2024

Summary of the Pull Request

PowerToys is still using an old version of System.IO.Abstraction, dated 2022: https://www.nuget.org/packages/System.IO.Abstractions

This PR upgrade it to the latest stable version and address changes.

PR Checklist

  • Closes: #xxx
  • Communication: I've discussed this with core contributors already. If work hasn't been agreed, this work might be rejected
  • Tests: Added/updated and all pass
  • Localization: All end user facing strings can be localized
  • Dev docs: Added/updated
  • New binaries: Added on the required places
  • Documentation updated: If checked, please file a pull request on our docs repo and link it here: #xxx

Detailed Description of the Pull Request / Additional comments

  • Removed System.IO.Abstraction from ManagedCommon.
    Reduce dependency/complexity a little bit: Common Logger and Language Helper aren't tested and the file system abstraction isn't really needed.
  • Aligned the code to new API signature
  • Changed expected files and folders for some PT Run Folder plugin tests.
    Asserts were wrong even using previous package version. It seems that the mocked file system is acting differently while enumerating files and folders. Think we shouldn't remove these tests in case it will be fixed in future releases.

Validation Steps Performed

  • Run tests
  • Performed sanity check for:
    • Common Logger and Language Helper
    • Settings
    • Fancy Zones Editor
    • Preview Handler
    • Workspace Editor and Launcher UI
    • Hosts
    • Image Resizer
    • Color Picker
    • Run (tested Folder Plugin behavior)
    • Environment Variables

@davidegiacometti davidegiacometti marked this pull request as draft October 29, 2024 21:25
@crutkas
Copy link
Member

crutkas commented Oct 30, 2024

Love this.

@davidegiacometti davidegiacometti force-pushed the users/davidegiacometti/sys-io-abstraction-upgrade branch from 620b2d2 to 896ea12 Compare November 1, 2024 16:45
@microsoft microsoft deleted a comment from azure-pipelines bot Nov 1, 2024
@davidegiacometti
Copy link
Collaborator Author

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@davidegiacometti davidegiacometti marked this pull request as ready for review November 2, 2024 12:14
@jaimecbernardo jaimecbernardo added the Needs-Review This Pull Request awaits the review of a maintainer. label Nov 6, 2024
Copy link
Collaborator

@jaimecbernardo jaimecbernardo left a comment

Choose a reason for hiding this comment

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

Code LGTM. Thanks for the contribution.
Will wait for and test a Dart build before approving.
Added a commit to fix signing of the new dependencies as well.

[DataRow(@"c:\Test>", 3, 3, true, DisplayName = "2 Folders recursive")]
[DataRow(@"c:\not-exist>", 3, 3, true, DisplayName = "Folder not exist, return root recursive")]
[DataRow(@"c:\Test>", 3, 0, true, DisplayName = "2 Folders recursive")]
[DataRow(@"c:\not-exist>", 3, 0, true, DisplayName = "Folder not exist, return root recursive")]
Copy link
Collaborator

Choose a reason for hiding this comment

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

Interesting, folders stopped being reported as files as well?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Not clear but there is something weird on mock file system side (previous returned items were wrong too). I think we can keep the test anyway. Plugin is working as expected.

@davidegiacometti
Copy link
Collaborator Author

davidegiacometti commented Nov 7, 2024

How did you catch these new DLLs? I don't expect them to be there since they seems be part of the testing infrastructure 🤔

EDIT: my bad, ignore the previous statement. Thanks for adding them to signing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs-Review This Pull Request awaits the review of a maintainer.
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

3 participants