Skip to content

Remove dead LibraryDevelopment and LocalLibrary build targets - #1113

Merged
jasonleenaylor merged 1 commit into
mainfrom
retire-dead-local-library-targets
Sep 4, 2026
Merged

Remove dead LibraryDevelopment and LocalLibrary build targets#1113
jasonleenaylor merged 1 commit into
mainfrom
retire-dead-local-library-targets

Conversation

@jasonleenaylor

@jasonleenaylorjasonleenaylor commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Build/LibraryDevelopment.targets lost its only importer when
Build/FieldWorks.proj was deleted, and it still called an
MSBuild.ExtensionPack console task whose UsingTask and package are
both gone. Build/LocalLibrary.targets held a LocalLibrary target that
no target or script invoked, passing a LibpalasoPlatform property
defined nowhere. Manage-LocalLibraries.ps1 replaced both.

Deleted the two .targets files, dropped the LocalLibrary.targets
import from InstallerBuild.proj, and removed the two UseLocalLibraries
reads in PackageRestore.targets, which gated only a Message nothing
could reach. Nothing outside LocalLibrary.targets referenced its items
or properties, so InstallerBuild.proj needs no replacement.

Also deleted DownloadLibraryDependencies.pl, whose only input was the
generated LibraryDevelopment.properties, dropped that file's .gitignore
entry, and pruned the stale references in the Localize.targets error
text and openspec build-phases.md.

Why these were unreachable

Both halves are leftovers from the migration in #789 (90bbc7a), which
replaced the shell half with Build/Manage-LocalLibraries.ps1 and
deleted Build/buildLocalLibraries.sh, but left the MSBuild halves
behind. LibraryDevelopment.targets was orphaned earlier still, when
Build/FieldWorks.proj went away in 5711bf6 (#678), and c2b1ffa
had already removed the UsingTask for the console task that lines 14
and 18 still call. UseLocalLibraries is set by nothing today — no CI
workflow, script, or doc passes /p:UseLocalLibraries=Y, so the one
path that could still reach the dead branch does not exist.

PalasoArtifactsDir / ChorusArtifactsDir / LcmArtifactsDir remain
live and untouched: their defaults in PackageRestore.targets and
Directory.Build.props and all seven consumers are unchanged. Only their
UseLocalLibraries-gated paths are gone. build.ps1 -UseLocalLcm and
scripts/Agent/Copy-LocalLcm.ps1 are also untouched — that is a fast
post-restore DLL overlay, complementary to Manage-LocalLibraries.ps1
rather than redundant with it.

Validation

  • .\build.ps1 -CommentHygiene — clean full native + managed build,
    0 warnings, 0 errors.
  • .\test.ps1 -CommentHygiene — exit 0, all 5897 tests passed.
  • An MSBuild /pp preprocess of InstallerBuild.proj resolves
    BuildInstaller with zero references to PalasoFileNamesForLL,
    ChorusDeps, ConfigName, LiblcmPlatform, or ChorusPlatform.
  • BuildWindowsXslAssemblies and VerifyLcmCloned both execute from
    InstallerBuild.proj after the import removal.
  • The Release installer build reaches Installer.legacy.targets and
    fails at buildBaseInstaller.bat (exit 9009). Restoring all three
    files and the import reproduces that failure byte-for-byte at the
    same line, so it is pre-existing and unrelated.

This change is Reviewable

@github-actions

github-actionsBot commented Aug 27, 2026

Copy link
Copy Markdown

NUnit Tests

1 files ±0 1 suites ±0 12m 50s ⏱️ +22s
6 002 tests ±0 5 921 ✅ ±0 81 💤 ±0 0 ❌ ±0 
6 011 runs ±0 5 930 ✅ ±0 81 💤 ±0 0 ❌ ±0 

Results for commit 277eadc. ± Comparison against base commit f2829d6.

♻️ This comment has been updated with latest results.

@codecov-commenter

codecov-commenter commented Aug 27, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 38.56%. Comparing base (f2829d6) to head (277eadc).

Additional details and impacted files
@@ Coverage Diff @@## main #1113 +/- ##
==========================================
- Coverage 38.56% 38.56% -0.01% 
==========================================
Files 1513 1513 Lines 350995 350995 Branches 40350 40350 ==========================================
- Hits 135351 135348 -3 - Misses 186427 186429 +2 - Partials 29217 29218 +1 

see 4 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Build/LibraryDevelopment.targets lost its only importer when
Build/FieldWorks.proj was deleted, and it still called an
MSBuild.ExtensionPack console task whose UsingTask and package are
both gone. Build/LocalLibrary.targets held a LocalLibrary target that
no target or script invoked, passing a LibpalasoPlatform property
defined nowhere. Manage-LocalLibraries.ps1 replaced both.
Deleted the two .targets files, dropped the LocalLibrary.targets
import from InstallerBuild.proj, and removed the two UseLocalLibraries
reads in PackageRestore.targets, which gated only a Message nothing
could reach. Nothing outside LocalLibrary.targets referenced its items
or properties, so InstallerBuild.proj needs no replacement.
Also deleted DownloadLibraryDependencies.pl, whose only input was the
generated LibraryDevelopment.properties, dropped that file's .gitignore
entry, and pruned the stale references in the Localize.targets error
text and openspec build-phases.md.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@jasonleenaylor
jasonleenaylorforce-pushed the retire-dead-local-library-targets branch from 412d578 to 277eadcCompareSeptember 3, 2026 15:43
@jasonleenaylor
jasonleenaylor marked this pull request as ready for review September 3, 2026 15:47
@jasonleenaylor
jasonleenaylor merged commit d79824a into mainSep 4, 2026
9 checks passed
@jasonleenaylor
jasonleenaylor deleted the retire-dead-local-library-targets branch September 4, 2026 18:44
Sign up for freeto 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.

3 participants

@jasonleenaylor@codecov-commenter@papeh