-
Notifications
You must be signed in to change notification settings - Fork 391
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
P2P reference treated as metadata reference when ref assemblies are enabled #2478
Comments
From discussion with @srivatsn, the new project system simply passes to Roslyn the same path that was given to What is likely happening here is that I'll let @davkean @jasonmalinowski comment on possible designs. I can set up a quick meeting if needed. |
From discussion with Dave and Jason, I think there are three options so far:
Note that there is an msbuild flag that lets a client project ignore the ref assembly produced by a library project. We didn't discuss how that might fit in either of those options ( |
From discussion with Sri and Jason, we're leaning towards option (2). That means leave the existing API as-is (to avoid breaking other consumers) and adding a new call to pass a list of output paths. For the record, we discussed an option (4) where Rolsyn would do some string manipulation (remove "ref/" in the path) before converting path to project reference. Also, Rainer confirmed that the output path for reference assemblies can be customized in MSBuild (with |
From discussion with Jason and Kevin about 15.3 scope, I think we're landing on option (4) after all, which is a Roslyn-side workaround. Filed dotnet/roslyn#20412 to track that. |
Agreed, I'd like to introduce a relationship where we just pass a property bag over to the language service, and we just have a CPS XAML rule that decides what gets in that property bag. It's the same relationship we have with NuGet and it works really well and is cheap to add additional data. |
@panopticoncentral @davkean Just a kindly ping to make sure this is still on the radar for 15.5. The implemented workaround for patching P2P references seems to work, but it still has hardcoded logic for the "ref" folder. |
@panopticoncentral @davkean I didn't hear back from you. |
@panopticoncentral @davkean I didn't hear back from you for two weeks. |
@jcouv We've introduced this property bag and I'm ready to start passing reference assembly data across to Roslyn. From above, it's not clear what data you actually want passed. Can you clarify? |
@davkean You should probably sync up with @jasonmalinowski. |
So all we just need is the path to the reference assembly in the bin path. I'm not sure if that's exposed via a property that would be pulled off of the MSBuild evaluation or something else, but just toss it into the property bag and we'll do it from there. |
I would be stoked to have this work soonish ^_^ |
Repro:
<CompileUsingReferenceAssemblies>true</CompileUsingReferenceAssemblies>
).From discussion with Jason, this is likely a misbehavior of the project system exposing information about project references to the IDE.
Relates to:
FYI @panopticoncentral @davkean @srivatsn for triage. Can we take a look for 15.3?
The text was updated successfully, but these errors were encountered: