Skip to content

Remove GVFS.Service.UI (dead code)#1938

Merged
tyrielv merged 1 commit into
microsoft:masterfrom
tyrielv:tyrielv/net10-remove-service-ui
Apr 10, 2026
Merged

Remove GVFS.Service.UI (dead code)#1938
tyrielv merged 1 commit into
microsoft:masterfrom
tyrielv:tyrielv/net10-remove-service-ui

Conversation

@tyrielv
Copy link
Copy Markdown
Contributor

@tyrielv tyrielv commented Apr 8, 2026

Remove GVFS.Service.UI (dead code)

Summary

Remove GVFS.Service.UI entirely — dead code. The Service.UI process displayed Windows toast notifications, but only the MountFailure notification was actively sent, and it provided no useful value.

Removing eliminates XmlSerializer and WinRT COM interop dependencies that would block NativeAOT compilation.

What was removed

  • GVFS.Service.UI project (13 files) — toast notification process
  • Unit testsGVFSToastRequestHandlerTests.cs
  • Service integration — launch/relaunch logic, notification handler (gutted to no-op)
  • Installer — start menu icon, start/stop procedures
  • Payload/layout — signing list entry, xcopy
  • Constants/config — UIName, ServiceUI log name, GVFSServiceUILocation
  • Diagnostics — Service.UI log collection in DiagnoseVerb
  • PackageMicrosoft.Windows.SDK.Contracts (only consumer)

Review guide

  • NotificationHandler.cs — gutted to no-op rather than deleted, in case callers exist
  • Setup.iss — verify all 4 Service.UI-related procedures and calls removed
  • GVFSService.Windows.cs — verify LaunchServiceUIIfNotRunning and call site removed

Verification

  • ✅ All C# projects build
  • ✅ 789/789 unit tests pass (4 Service.UI tests removed)

Context

Phase 2D of .NET 10 NativeAOT migration. Stacked on #1937 (central packages).

@tyrielv tyrielv requested a review from KeithIsSleeping April 8, 2026 23:27
@tyrielv tyrielv marked this pull request as ready for review April 9, 2026 15:52
@tyrielv tyrielv enabled auto-merge April 9, 2026 16:16
@tyrielv tyrielv disabled auto-merge April 9, 2026 21:21
@tyrielv tyrielv enabled auto-merge April 9, 2026 21:21
Copy link
Copy Markdown

@KeithIsSleeping KeithIsSleeping left a comment

Choose a reason for hiding this comment

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

LGTM

The Service.UI process displayed Windows toast notifications, but only
the MountFailure notification was actively sent, and it provided no
useful value. Removing eliminates XmlSerializer and WinRT COM interop
dependencies that would block NativeAOT compilation.

Removes: project, unit tests, installer integration, service launch
logic, notification handler, diagnostics log collection, and the
Microsoft.Windows.SDK.Contracts package.

Assisted-by: Claude Opus 4.6
Signed-off-by: Tyrie Vella <tyrielv@gmail.com>
@tyrielv tyrielv force-pushed the tyrielv/net10-remove-service-ui branch from cf53726 to 6707c82 Compare April 10, 2026 01:00
@tyrielv tyrielv merged commit 7fa6733 into microsoft:master Apr 10, 2026
45 checks passed
@mjcheetham mjcheetham mentioned this pull request May 11, 2026
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.

2 participants