GithubHelp home page GithubHelp logo

Comments (4)

tyranid avatar tyranid commented on June 30, 2024 1

I decided it wasn't worth the hassle of changing my main dev projects to the new format, especially for anything which uses GUI code, at least until I go more all in on .NET 5. Instead I changed the "Core" projects to be my main mechanism to release the NuGet packages and I added source link support. If you grab v1.1.30 of the library from NuGet it should have both multi-target support and symbols/source link enabled. Thanks.

from sandbox-attacksurface-analysis-tools.

tyranid avatar tyranid commented on June 30, 2024

I did do this briefly, but I had problems as I think I needed to update the project to use .NET Framework 4.6+ and I want to keep support for 4.5 as the base. I could probably add it to the Core project which currently is uploaded as a separate NuGet project but I've not made a good decision on that. Certainly it'd be easier for me to just do the relatively minor change myself then making you sign the CLA.

from sandbox-attacksurface-analysis-tools.

the-exodus avatar the-exodus commented on June 30, 2024

You shouldn't need to target net461, since the sourcelink assemblies are only consumed by MSBuild. So long as you declare that all assets in the package are private they shouldn't be picked up by the compilation.

Might I suggest using one "SDK style csproj" for both targets? You shouldn't have to do anything other than replacing <TargetFramework>netstandard2.0</TargetFramework> with <TargetFrameworks>netstandard2.0;net45</TargetFrameworks>, remove the old-style csproj and the nuspec, and build. You'll get both targets in a single nuget package, and as a bonus you'll have a project file that is usable in a lot of ways, and not just for storing a serialized project :)

The reason I'm suggesting it now is that it's much easier to get these things to work in an SDK project.

from sandbox-attacksurface-analysis-tools.

tyranid avatar tyranid commented on June 30, 2024

I would like to as it would simplify all manner of build operations, I'll take a look at it to see if things have improved. However part of my issue comes down to the nuget packages which I pull in to support various classes are not supported for .NET 4.5 (only 4.61+ or .NET standard 2.0) so they fail. I can wrap the references in the appropriate conditionals but Visual Studio hasn't had a good reputation for supporting multi-framework builds at the best of times and I can imagine that support for conditional references is worse. It's possible that I will eventually drop support for .NET framework entirely and focus on .NET 5+ but that would probably come with a significant refactor of the code which isn't planned to happen soon if ever.

from sandbox-attacksurface-analysis-tools.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.