Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Making the library language/compiler agnostic #279

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

LPeter1997
Copy link

Description

As I have raised in #278 , it would be nice to make the library extensible and language-agnostic, since it's pretty easy to develop .NET languages. Long story short, as I've started fleshing out the idea, basically implemented my proposed solution. Users can register ICompilerOptionsParsers through AnalyzerManagerOptions to extend with a compiler. The 3 compilers already supported (Roslyns C# and VB, FSC) are in the list by default.

@@ -1,17 +0,0 @@
namespace Buildalyzer;

/// <summary>The compiler language.</summary>
Copy link
Contributor

Choose a reason for hiding this comment

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

I disagree with dropping this. I would propose to keep CompilerLanguage but convert it to a (Single Value Object) readonly struct. That was not needed yet, but with your proposed solution, it will be.

@Corniel
Copy link
Contributor

Corniel commented Jul 13, 2024

I really like the idea of opening up Buildalizer for different languages. I'm not sure yet about the proposed solution. There are a lot of changes in here, all requiring attention. It ols means a lot of breaking changes. We should investigate how we reduce the pain for users when they have to migrate.

@phmonte
Copy link
Owner

phmonte commented Jul 31, 2024

@LPeter1997 It's a big change, as I mentioned in the issue, I like the idea, but we need to evaluate this PR very carefully to ensure the next steps.
This is on my list, I just ask for patience, I promise to evaluate it as quickly as possible.

@Corniel
Copy link
Contributor

Corniel commented Aug 1, 2024

I tried an alternative approach, that involves less drastic changes. See #285

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.

3 participants