amay077 / Xamarin.Forms.GoogleMaps

Map library for Xamarin.Forms using Google maps API
https://www.nuget.org/packages/Xamarin.Forms.GoogleMaps/
MIT License
546 stars 347 forks source link

Merge Into a Single project and enhance for enhanced CI #544

Closed dansiegel closed 4 years ago

dansiegel commented 6 years ago

SUMMARY

The current state of the project has a mix of use of packages.config and PackageReference. This should be fixed so that all projects use the new PackageReference. This can actually cause nuget restore to fail, and the packages.config project cause packages to be downloaded even when they already exist in the user's local cache.

There are also a large number of projects present when this could now be simplified and a single assembly produced and packaged using the new Sdk Style project.

DETAILS

What I would propose is to implement a single project similar to what I've described in this blog post. This would allow for multiple target frameworks, while only needing to build a single project and generating a NuGet automatically on each build. I can additionally add a YAML for building on VSTS. This will allow you to remove the error prone nuspec and easily add CI builds to the project.

@amay077 please let me know if you prefer to leave platform files in place or if you are ok migrating them to a new path within the core project.

PLATFORMS

amay077 commented 6 years ago

Thanks for your suggestion. But I disagree it.

Multi-targeting csproj is convenient but project has too many source files(classes x each platforms). I think Multi-targeting csproj does not fit to Xamarin.Forms custom renderers. I want to use Multi-targeting csproj for simple Xamarin Plugin or like Xamarin Essential project.