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

Update build system #41

Closed
richardszalay opened this issue Aug 20, 2017 · 2 comments
Closed

Update build system #41

richardszalay opened this issue Aug 20, 2017 · 2 comments
Milestone

Comments

@richardszalay
Copy link
Owner

The current build system has a number of issues:

  1. It uses the old approach of having one project per target
  2. The NetStandard project uses project.json, which requires the preview tooling for .NET Core

This was somewhat workable while I had VS2015 and the preview tooling installed, but now I only have VS2017.3 so an update has become necessary to release new versions.

Ideally:

  1. The build will have a single library project that has TargetPlatforms set for all the current TFMs. I'm not sure if PCLs are supported, so this may have to end up as two.
  2. If the build becomes a single project, it should generate a nupkg using the new csproj-based system.
  3. It should ideally build on .NET Core (inc. Linux/macOS), automatically dropping the Windows-only TFMs
@richardszalay
Copy link
Owner Author

richardszalay commented Aug 20, 2017

Turns out this will have to wait until after we drop net40 support - the System.Net.HttpExtensions.dll that ships with net40 in Microsoft.Net.Http (the old package that supported net40) references a different version of System.Net.Http and it causes a number of build errors.

I had worked around the issue by overriding the reference to point to the net45 version of System.Net.HttpExtensions, which apparently works but doesn't appear to be possible in in the MSBuild15 project system.

It might be possible to work around all of this, but I don't want to risk breaking backward compatibility in a point release so it will need to wait until the next major release.

@hwoodiwiss
Copy link

hwoodiwiss commented Feb 15, 2022

Hi, just been looking at this a bit.

Not sure if it's something Microsoft have done, however, it seems that building with msbuild 17 works.
I used the command $env:PackageVersion = '10.11.12'; msbuild -t:build .\Release.proj

This would allow the appveyor image to be upgraded to Visual Studio 2022 if it is this case and this has just worked, right?

Edit: Nope, looks like I have .NET 4.0 and 4.5 targetting packs installed locally from something else.

@richardszalay richardszalay added this to the 7.0.0 milestone Oct 12, 2023
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

No branches or pull requests

2 participants