Skip to content
New issue

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

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

Already on GitHub? # to your account

Support for Portable PDBs in server project #185

Closed
aivanov-oneinc opened this issue Sep 9, 2019 · 2 comments · Fixed by #410
Closed

Support for Portable PDBs in server project #185

aivanov-oneinc opened this issue Sep 9, 2019 · 2 comments · Fixed by #410

Comments

@aivanov-oneinc
Copy link

Hello team!

We use OpenRIaServices for generating a WCF RIA Client. We're going for optimizing our server-side build artifacts and turn on <DebugType>portable</DebugType> It allows decreasing output size in about 10 times, it is more modern and useful. But suddenly we found that OpenRiaService is unable to generate the correct client (*.g.cs) in that case.

Preconditions:

  1. On the server, we have an enumeration with our custom attributes
  2. Server project references a library with custom attributes
  3. Enumerations members have custom attributes on them
  4. Custom attributes classes declared in .shared. files in DLL compiled with [<DebugType>portable</DebugType>].

Expected result: We have our custom attributes generated on a client

Actual result: On running MSBuild CreateOpenRiaClientFilesTask client-generated proxy does not contain those custom attributes.

Suggestion

Our investigation also leads us to the existing dotnet community-supported library for symbols reading is https://github.com/dotnet/symreader-portable I think it is good to consider replacing your implementations of ISymbol* interfaces with https://github.com/dotnet/symreader-portable .

I will be really glad to see this working in your library.

@aivanov-oneinc aivanov-oneinc changed the title Support of Portable PDB Support for Portable PDB Sep 9, 2019
@aivanov-oneinc aivanov-oneinc changed the title Support for Portable PDB Support for Portable PDBs Sep 9, 2019
@Daniel-Svensson
Copy link
Member

Supporting the portable fortmat would be god to have, especially if we want to make it easier to use netstandard/netcoreapp libraries. I haven't researched if the portable symreader also support the "full"/windows pdb format. Portable pdb should might also be usable when .net 4.7.2+ is installed using some opt in mechanism according to portable pdb docs but I dont know if that would be applicable to the current code

I would gladly accept a PR with support for portable pdbs alongside the currently supported format.
This would fit very for the 5.0 release #178

@Daniel-Svensson
Copy link
Member

Daniel-Svensson commented Sep 10, 2019

You could maybe also look at the System.Reflection.Metadata which is an alternativ, but it will probably require a little more effort.

update it also looks like https://github.com/dotnet/symreader should support both "full" and portable

@Daniel-Svensson Daniel-Svensson changed the title Support for Portable PDBs Support for Portable PDBs in server project Jan 24, 2020
@Daniel-Svensson Daniel-Svensson added this to the 6.0 milestone Sep 17, 2021
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants