AArnott / CodeGeneration.Roslyn

Assists in performing Roslyn-based code generation during a build.
Microsoft Public License
408 stars 59 forks source link

Revert "Remove old dependency resolution files" #103

Closed AArnott closed 5 years ago

AArnott commented 5 years ago

Reverts AArnott/CodeGeneration.Roslyn#93

I'm not sure why #93 called them "old dependency resolution files", but these classes have nothing to do with dependency resolution, and in fact they were public API that my ImmutableObjectGraph generator requires. These classes came from roslyn, where they are internal.

amis92 commented 5 years ago

Oh. Well, I understand that it was a public API, although don't know what for. These files are completely separate from anything that the package CodeGeneration.Roslyn does, and are not used anywhere else. Thus, I called them "unused" in terms of this project, and suggested their removal.

AArnott commented 5 years ago

I added them a few years ago. I'm not sure why they're here as opposed to in the generator extension assemblies -- there may be a good reason, but I don't recall.

amis92 commented 5 years ago

@AArnott I think it'd be best to drop them from CodeGeneration.Roslyn (and move to ImmutableObjectGraph?). They don't serve a purpose here, aren't tested, add unnecessary public API surface and are completely separate from the actual purpose and features of this project. At least that's what I believe to be true.

It may be a longer process of deprecation/moving over, but since the project is v0.4, breaking changes like that are better than when we have 1.x :)