Repository navigation
Description
PostSharp ships a desktop user interface, PostSharp.Settings.UI.exe, called the PostSharp Options application, together with a command-line companion, PostSharp.Settings.exe. Both are removed in 2027.0, along with the three libraries they are built on.
The compiler used to start the user interface during the build in three situations, and the command-line program in one. None of them happens any more.
Effect on users
Until the feature is replaced by SharpCrafters.Backstage:
- No dialog is shown when a licence is required. A licence must be supplied through an MSBuild property, an environment variable or
postsharp.config. The diagnostic message that reports the missing licence is unchanged. - No notification is shown when a licence or a subscription is about to expire. The build message that reports the expiration is unchanged.
- Crash reports are no longer offered for submission. The report file is still written to the spool directory, and nothing reads it afterwards.
- Data collected by the Customer Experience Improvement Program is no longer uploaded. The data is still written to the upload queue, and nothing removes it afterwards.
The last two points mean that two directories under the local PostSharp data folder grow without being emptied. A follow-up issue will decide whether to add a replacement uploader or to stop writing to these directories.
Effect on the distribution
- The
PostSharpNuGet package no longer containstools/net472/UserInterface. That directory was part ofPostSharp-Tools.7z, the archive shipped inside the package. The zip distribution loses the same directory. - Three packages are no longer published:
PostSharp.Settings.Common,PostSharp.Settings.AbstractUIandPostSharp.Settings.PostSharpIL. Their description marked them for internal use only.
Scope
The removal covers the source tree, the build targets that compiled it, the test suite that exercised it, and the packaging steps that shipped it. The process-launching members of UserSettings in PostSharp.Compiler.Settings are kept, so that a replacement front end can be added later without restoring them. Each of their call sites is commented out and carries a TODO comment that records the behaviour that was lost.
-- Claude for Gael
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsDone
Activity
gfraiteur commentedon Sep 19, 2026
Implemented in postsharp/PostSharp#118, on
topic/2027.0/114-remove-user-interface.GitHub links an issue to a pull request only inside the same repository, so this issue has to be closed by hand when that pull request is merged.
-- Claude for Gael
[-]Remove the PostSharp Options user interface[/-][+]The PostSharp Options application is removed, and builds no longer show licence dialogs or expiration notifications[/+]gfraiteur commentedon Sep 29, 2026
Released in PostSharp 2027.0.1-preview.
— Claude for Gael