Skip to content

build: bump shipping libraries from .NET Framework 4.5.2 to 4.7.2 (consolidate target frameworks step 2) #174

Description

@saveenr

Bump the shipping libraries (VisioAutomation, VisioAutomation.Models, VisioScripting, VisioPowerShell) and sample projects (VSamples, VSamples.Docs) from .NET Framework 4.5.2 to 4.7.2. Test projects are already on 4.7.2; this consolidates the whole solution onto a single TFM.

Why

Two reasons:

  1. VS 2026 floor. VS 2026 supports .NET Framework 4.6.2 and above only. The 4.5.2 floor blocks Move development environment to Visual Studio 2026 #171 (move dev to VS 2026).
  2. TFM consistency. Mixed TFMs cause subtle binary-compatibility surprises (a test project on a higher TFM can use APIs the library under test cannot). Step 1 (4.0/4.5 → 4.5.2) eliminated the production split; this step eliminates the 4.5.2/4.7.2 library/test split.

Constraint

Do not land before 2026-10-13 (Windows 10 LTSB 2016 leaves Extended Support). Bumping earlier blocks enterprise users on locked LTSB images. See enterprise_compat_ltsb2016.md in the project memory.

VisioPowerShell older-PowerShell support is preserved

The older-PS floor is set by the System.Management.Automation v3 reference and the manifest's PowerShellVersion value, not by the .NET Framework TFM. Bumping 4.5.2 → 4.7.2 doesn't change that.

Cross-refs

Effort

S. The per-csproj change is mechanical. Verify nothing in the test suite breaks under the new TFM.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions