Skip to content

Conversation

@bash
Copy link
Member

@bash bash commented Feb 4, 2025

Follow-up to #834

I learned some new things while testing the analyzer package with both an SDK that supports multi-targeting and one that doesn't:

  • The name for embedded resources is derived from the RootNamespace property which in turn is derived from the project name, not the AssemblyName as I had previously thought. This means that the resources could not be loaded for one of the analyzer versions :/
  • SDKs with support for multi-targeting load analyzers outside the roslyn* directory. Luckily the minimum Roslyn version that we support (4.0) was shipped with an SDK that already supports multi-targeting, so now we now put that analyzer version inside roslyn4.0.
  • SDKs without support for multi-targeting load analyzers recursively (even inside roslyn* directories) which causes lots of noisy errors. To improve the situation in that case, I have included a .targets file that removes the analyzers and warns the user.
    image

@bash bash requested review from FreeApophis and Mafii February 4, 2025 13:30
@bash bash enabled auto-merge February 4, 2025 13:31
@bash bash force-pushed the fix-analyzers branch 3 times, most recently from 7880c3a to 3b10ef5 Compare February 4, 2025 13:39
bash added 4 commits February 4, 2025 15:16
This fixes the incorrect resource name
for Funcky.Analyzers.Roslyn4.0 (which is implicitly
derived from the RootNamespace which in turn
is implicitly derived from the project file name).
@bash bash merged commit cc33b2b into main Feb 4, 2025
9 checks passed
@bash bash deleted the fix-analyzers branch February 4, 2025 15:43
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